当我直接使用ToString()
方法时,我得到了一组完整的嵌套异常AggregateException
:
public void GreenTest()
{
var ex = new AggregateException(new Exception("ex1"), new Exception("ex2"));
ex.ToString()
.Should()
.Contain("ex1")
.And
.Contain("ex2");
}
问题是当AggregateException
包裹在另一个异常中时我只得到第一个异常:
public void RedTest()
{
var ex = new Exception("wrapper", new AggregateException(new Exception("ex1"), new Exception("ex2")));
ex.ToString()
.Should()
.Contain("wrapper")
.And
.Contain("ex1")
.And
.Contain("ex2");
}
ex2
结果字符串中不存在。这是一个错误还是类的一些众所周知的特性AggregateException
?