首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

调用对象出现异常-反射得到对象实例里的异常

2014-01-28 
在使用用反射得到的对象时,所有的异常在运行时全都变成调用对象出现异常的异常 虽然没什么大碍,但很想了

在使用用反射得到的对象时,所有的异常在运行时全都变成'调用对象出现异常'的异常
虽然没什么大碍,但很想了解是为什么,谁能说说反射和异常处理的关系?

------解决方法--------------------------------------------------------
1、反射用于描述类型本身,而不是实例/对象,但是可以通过得到的信息操作对象(比如调用一个方法)
2、.NET能够使用反射如此轻易的描述类型的原因是代码在编译时会把自身的'元数据'直接编译进程序集(可移植可执行/PE文件)内的尾部区域(元数据表),组织形式可以看这里:
ms-help://MS.MSDNQTR.2003FEB.2052/cpguide/html/cpconMetadataSelfDescribingComponents.htm
这里有timmy3310的.Net中的反射使用入门(主要是使用方面的):http://search.csdn.net/Expert/topic/2214/2214138.xml
另外《.NET框架程序设计》讲的很详细
3、异常处理和反射没有直接的关系,使用反射的技巧调用对象方法和通常的调用方法在原理上也一样,不过弹出的异常是TargetInvocationException(假如确实是被调用方法内的异常),可以通过InnerException得到原始异常,这个也和平时处理的方法类似

        

热点排行