VB.Net/Development/Exception Message
Содержание
Customize Exception Information
Imports System
Imports System.Text
Imports System.Text.RegularExpressions
Public Class MainClass
Shared Sub Main(ByVal args As String())
Try
Console.WriteLine("Open file here")
Dim a As Double = 5
Dim b As Double = 0
Console.WriteLine("{0} / {1} = {2}", a, b, DoDivide(a, b))
Console.WriteLine("This line may or may not print")
" most derived exception type first
Catch e As System.DivideByZeroException
Console.WriteLine( _
"DivideByZeroException! Msg: {0}", e.Message)
Console.WriteLine( _
"Helplink: {0}", e.HelpLink)
Console.WriteLine( _
"Stack trace: {0}", e.StackTrace)
Catch
Console.WriteLine("Unknown exception caught!")
Finally
Console.WriteLine("Close file here.")
End Try
End Sub
" do the division if legal
Shared Public Function DoDivide( _
ByVal a As Double, ByVal b As Double) As Double
If b = 0 Then
Dim e As New System.DivideByZeroException( )
e.HelpLink = "http://www.vbex.ru"
Throw e
End If
If a = 0 Then
Throw New System.ArithmeticException( )
End If
Return a / b
End Function "DoDivide
End Class
Display Exception, Inner Exception and stack trace
Imports System
Imports System.Data
Imports System.Diagnostics
public class MainClass
Shared Sub Main()
Try
Dim Result As Double = 100 \ CInt("0")
Console.WriteLine(Result)
Catch E As System.DivideByZeroException
Console.WriteLine("Message: " + E.Message)
Dim F As Integer, S As New StackTrace(E)
Console.WriteLine("StackFrame: ")
For f = 0 To S.FrameCount - 1
Console.WriteLine(S.GetFrame(f).ToString())
Next F
End Try
End Sub
End Class
Exception Help Link, Message and Trace
Imports System
Imports System.Text
Imports System.Text.RegularExpressions
Public Class MainClass
Shared Sub Main( )
Try
Console.WriteLine("Open file here")
Dim a As Double = 5
Dim b As Double = 0
Console.WriteLine("{0} / {1} = {2}", a, b, DoDivide(a, b))
Console.WriteLine("This line may or may not print")
" most derived exception type first
Catch e As System.DivideByZeroException
Console.WriteLine( _
"DivideByZeroException! Msg: {0}", e.Message)
Console.WriteLine( _
"Helplink: {0}", e.HelpLink)
Console.WriteLine( _
"Stack trace: {0}", e.StackTrace)
Catch
Console.WriteLine("Unknown exception caught!")
Finally
Console.WriteLine("Close file here.")
End Try
End Sub "Main
Shared Public Function DoDivide(ByVal a As Double, ByVal b As Double) As Double
If b = 0 Then
Throw New System.DivideByZeroException( )
End If
If a = 0 Then
Throw New System.ArithmeticException( )
End If
Return a / b
End Function
End Class
Exception Information
Imports System
Public Class MainClass
Shared Sub Main(ByVal args As String())
Try
CalculateValue()
Catch ex As Exception
Console.WriteLine( "ex.Message:" & ex.Message )
Console.WriteLine( "ex.StackTrace:" & ex.StackTrace )
Console.WriteLine( "ex.ToString:" & ex.ToString )
End Try
End Sub
Shared Private Function CalculateValue() As Integer
Return 1 \ Integer.Parse("0")
End Function
End Class