我用 "throw;" 重新抛出异常,但是堆栈跟踪不正确:
static void Main(string[] args) {
try {
try {
throw new Exception("Test"); //Line 12
}
catch (Exception ex) {
throw; //Line 15
}
}
catch (Exception ex) {
System.Diagnostics.Debug.Write(ex.ToString());
}
Console.ReadKey();
}
正确的堆栈跟踪应该是:
System.Exception: Test
at ConsoleApplication1.Program.Main(String[] args) in Program.cs:Line 12
但我得到的是:System.Exception: Test
at ConsoleApplication1.Program.Main(String[] args) in Program.cs:Line 15
但是第15行是 "throw;" 的位置。我已经使用 .NET 3.5 进行了测试。