• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

VB.NET Exception.GetBaseException方法代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了VB.NET中System.Exception.GetBaseException方法的典型用法代码示例。如果您正苦于以下问题:VB.NET Exception.GetBaseException方法的具体用法?VB.NET Exception.GetBaseException怎么用?VB.NET Exception.GetBaseException使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Exception的用法示例。



在下文中一共展示了Exception.GetBaseException方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的VB.NET代码示例。

示例1: New

' Example for the Exception.GetBaseException method.
Namespace NDP_UE_VB

    ' Define two derived exceptions to demonstrate nested exceptions.
    Class SecondLevelException
        Inherits Exception
           
        Public Sub New( message As String, inner As Exception )
            MyBase.New( message, inner )
        End Sub
    End Class

    Class ThirdLevelException
        Inherits Exception
           
        Public Sub New( message As String, inner As Exception )
            MyBase.New( message, inner )
        End Sub
    End Class

    Class NestedExceptions
       
        Public Shared Sub Main( )
            Console.WriteLine( _
                "This example of Exception.GetBaseException " & _
                "generates the following output." )
            Console.WriteLine( vbCrLf & _
                "The program forces a division by 0, then throws " & _
                "the exception " & vbCrLf & "twice more, using " & _
                "a different derived exception each time:" & vbCrLf )
              
            Try
                ' This sub calls another that forces a division by 0.
                Rethrow()

            Catch ex As Exception
                Dim current As Exception
                 
                Console.WriteLine( _
                    "Unwind the nested exceptions using the " & _
                    "InnerException property:" & vbCrLf )
                 
                ' This code unwinds the nested exceptions using the 
                ' InnerException property.
                current = ex
                While Not ( current Is Nothing )
                    Console.WriteLine( current.ToString( ) )
                    Console.WriteLine( )
                    current = current.InnerException
                End While
                 
                ' Display the innermost exception.
                Console.WriteLine( _
                    "Display the base exception using the " & _
                    "GetBaseException method:" & vbCrLf )
                Console.WriteLine( _
                    ex.GetBaseException( ).ToString( ) )
            End Try
        End Sub
           
        ' This sub catches the exception from the called sub
        ' DivideBy0( ) and throws another in response.
        Shared Sub Rethrow( )
            Try
                DivideBy0( )

            Catch ex As Exception
                Throw New ThirdLevelException( _
                    "Caught the second exception and " & _
                    "threw a third in response.", ex )
            End Try
        End Sub
           
        ' This sub forces a division by 0 and throws a second 
        ' exception.
        Shared Sub DivideBy0( )
            Try
                Dim zero As Integer = 0
                Dim ecks As Integer = 1 \ zero

            Catch ex As Exception
                Throw New SecondLevelException( _
                    "Forced a division by 0 and threw " & _
                    "a second exception.", ex )
            End Try
        End Sub
    End Class
End Namespace ' NDP_UE_VB
开发者ID:VB.NET开发者,项目名称:System,代码行数:88,代码来源:Exception.GetBaseException

输出:

The program forces a division by 0, then throws the exception
twice more, using a different derived exception each time:

Unwind the nested exceptions using the InnerException property:

NDP_UE_VB.ThirdLevelException: Caught the second exception and threw a third
in response. ---> NDP_UE_VB.SecondLevelException: Forced a division by 0 and
threw a second exception. ---> System.DivideByZeroException: Attempted to div
ide by zero.
at NDP_UE_VB.NestedExceptions.DivideBy0()
--- End of inner exception stack trace ---
at NDP_UE_VB.NestedExceptions.DivideBy0()
at NDP_UE_VB.NestedExceptions.Rethrow()
--- End of inner exception stack trace ---
at NDP_UE_VB.NestedExceptions.Rethrow()
at NDP_UE_VB.NestedExceptions.Main()

NDP_UE_VB.SecondLevelException: Forced a division by 0 and threw a second exc
eption. ---> System.DivideByZeroException: Attempted to divide by zero.
at NDP_UE_VB.NestedExceptions.DivideBy0()
--- End of inner exception stack trace ---
at NDP_UE_VB.NestedExceptions.DivideBy0()
at NDP_UE_VB.NestedExceptions.Rethrow()

System.DivideByZeroException: Attempted to divide by zero.
at NDP_UE_VB.NestedExceptions.DivideBy0()

Display the base exception using the GetBaseException method:

System.DivideByZeroException: Attempted to divide by zero.
at NDP_UE_VB.NestedExceptions.DivideBy0()



注:本文中的System.Exception.GetBaseException方法示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
VB.NET BinaryReader.ReadDouble方法代码示例发布时间:2022-05-24
下一篇:
VB.NET TextureBrush.Clone方法代码示例发布时间:2022-05-24
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap