在以下幾點:嘗試...抓住...終於 - 可以「前」告訴你在哪裏發生異常?
Try
Some code, which throws an exception
Catch ex as Exception
Debug.Print(ex.[some property which contains the exception location]
End Try
是有恩變量,它可以告訴你的線,甚至程序的任何屬性在發生異常?我正在使用vb.net。
在以下幾點:嘗試...抓住...終於 - 可以「前」告訴你在哪裏發生異常?
Try
Some code, which throws an exception
Catch ex as Exception
Debug.Print(ex.[some property which contains the exception location]
End Try
是有恩變量,它可以告訴你的線,甚至程序的任何屬性在發生異常?我正在使用vb.net。
ex.StackTrace
通常包含引發異常的行號。
這通常是在的格式:
在Project.Class.Method()在C:\ Users \用戶名\文件\的Visual Studio 2013 \項目\項目\命名空間\ Class.cs: line 178
這聽起來像你需要ex.StackTrace或ex.TargetSite
https://msdn.microsoft.com/en-us/library/system.exception.stacktrace(v=vs.110).aspx
https://msdn.microsoft.com/en-us/library/system.exception.targetsite(v=vs.110).aspx
我只用這些屬性自己在C#,但是這應該是所有.NET相同。
完美,感謝兩位! – dya
哇,我只是意識到這是一個「堆棧跟蹤」,並顯示完整的麪包屑痕跡到錯誤的程序,然後行。棒極了! – dya
這是一個很好的功能,還有一個更完整的顯示整個消息的方式。 C#:'Console.WriteLine(ex.ToString);'我認爲VB的這個實現是相同的,減去分號。如果不是,我希望有人會糾正我,因爲我通常不是VB用戶! – marcushobson