【发布时间】:2010-11-30 19:24:48
【问题描述】:
当我在该对象的构造函数中时,如何设置Exception 对象的InnerException 属性?这归结为查找和设置没有设置器的属性的支持字段。
顺便说一句:我已经看到了这个evain.net - Getting the field backing a property using Reflection,但如果可能的话,我正在寻找非基于 IL 的解决方案。
Exception的构造函数是创建Exception类型的地方,所以我不能使用基类构造函数MyException() :base(...)等来调用它。
【问题讨论】:
-
重新跟进;然后(正如我提到的)在 ctor 的静态方法 ahead 中创建类型,而不是在构造函数主体内。
-
在我的情况下封装更有意义。
-
...但我同意你的观点,我会考虑把它变成工厂以避免反射成本。
-
(fwiw,我没有说工厂;看看这个例子——你可以使用静态方法来做就在基础ctor之前,在对base的调用中; 你把你的工作放在这里,然后)
标签: c# .net exception logging reflection