|
1
25
您可以使用 System.AggregateException 。 示例:
|
|
|
2
0
您不是通过setter设置内部异常,而是通过构造函数设置内部异常。
堆栈跟踪将保存在内部异常中。 |
|
|
3
0
为什么要把事情搞复杂?为什么不通过
您还应该重命名
|
|
|
4
0
正如你所说,最大的问题是Exception只提供getter,这限制了你的能力。要解决这个问题,你可以从Exception继承,使其属性可设置。在我的示例类中,您可以初始化FlexibleException,它通过一个常规异常递归,基本上是对其进行复制,但复制是可设置的。然后,要添加上一个异常,它可以沿着阶梯向下移动,直到找到末端并固定到它上,将两个异常连接起来。我从来没有用过这样的东西,所以这只是我写的东西,它可能有一些错误,但我相信它实现了你想要做的。
编辑:您不能通过继承将setter添加到InnerException或StackTrace,但您可以添加一个单独的setter属性WritableStackTrace并重写StackTraces以返回其值(从技术上讲,使其可设置)。 编写派生Exception类的另一种选择是编写一个与AddPreviousException非常相似的函数,只是它将深入到异常对象中,然后重新创建它,将要连接的异常传递到其构造函数,然后逐步吞下每个异常。 |
|
|
JBryanB · 如何从基本抽象类访问类属性 3 年前 |
|
|
Gabe Tucker · 无法在golang中分配接口对象指针 4 年前 |
|
|
jkone27 · F#-在编译时从字符串生成简单的空类型 8 年前 |
|
|
John Bustos · C#通用工厂模式,不说明通用工厂模式的类型 8 年前 |
|
|
Randall Flagg · 访问propertyinfo中的属性 8 年前 |
|
|
Kacper · 在反映的全名和成员c后的“*”中,“+”是什么意思# 8 年前 |
|
|
tobeypeters · 反射铸造 8 年前 |
|
|
myst02 · 如何在另一个方法之后调用该方法? 8 年前 |