У меня есть этот код
try
{
  //AN EXCEPTION IS GENERATED HERE!!!
}
catch  
{
   SqlService.RollbackTransaction();
   throw;
}
Код выше вызывается в этом коде
try
{
  //HERE IS CALLED THE METHOD THAT CONTAINS THE CODE ABOVE
}
catch (Exception ex)
{
   HandleException(ex);
}
Исключение, переданное как параметр методу "HandleException", содержит номер строки строки "throw" в трассировке стека вместо реальной строки, в которой было создано исключение. Кто-нибудь знает, почему это может произойти?
EDIT1 Хорошо, спасибо всем за ваши ответы. Я изменил внутренний catch для
catch(Exception ex)
{
    SqlService.RollbackTransaction();
    throw new Exception("Enrollment error", ex);
}
Теперь у меня есть правильная строка в трассировке стека, но мне пришлось создать новое исключение. Я надеялся найти лучшее решение: - (
EDIT2 Возможно (если у вас есть 5 минут), вы можете попробовать этот сценарий, чтобы проверить, получился ли у вас тот же результат, который не очень сложно воссоздать.

