理解.NET中的异常(二)

4.1 System.Exception 类型

CLR允许我们将任何类型——Int32、String等——的一个实例作为异常抛出。但实际上,微软定义了System.Exception类型,并规定所有和CLS兼容的编程语言都必须能够抛出并捕获那些继承自System.Exception的异常类型。继承自System.Exception的异常类型被认为是与CLS兼容的。C#和其它许多语言都只允许代码抛出与CLR兼容的异常。

System.Exception类型是一个很简单的类型,下表列出了它所包含的一些属性。

属性

访问权限

类型

描述

Message

只读

String

包含一段辅助性的文本,描述异常发生的原因。在出现未处理异常时,这些信息通常会写入log。这些信息用户通常是看不见的,所以应尽量使用技术性的词汇以帮助其它开发人员修正代码。

Data

只读

IDictionary

一个指向key-value对集合的引用。通常应在抛出异常前,向该集合添加信息,而捕获异常的代码则使用这些信息进行异常恢复操作。

Source

读写

String

产生异常的程序集的名称

StackTrace

只读

String

包含了调用堆栈中抛出异常的方法的名称和签名。该属性对于调试极具价值。

TargetSite

只读

MethodBase

抛出异常的方法。

HelpLink

读写

String

获取或设置异常的关联帮助文件的链接。

InnerExceptoin

只读

Exception

如果当前异常是在处理另一个异常时产生的,那么该属性表示前一个属性。该属性通常为null。Exception类型还提供了一个公有方法GetBaseException,用以遍历所以内部异常组成的链表,返回最开始那个异常。







http://www.cnblogs.com/anderslly/archive/2007/03/15/675642.html




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值