什么是区分相同类型但因不同原因而抛出的两个异常之间的最佳方法?
例如,当尝试访问空序列时,可能会抛出
根据我的阅读,我得出结论:使用
在不使用消息内容的情况下,最好的过滤方法是什么?
编辑:它们似乎具有相同的HResult值。
例如,当尝试访问空序列时,可能会抛出
InvalidOperationException
,但在使用Concurrent对象(例如BlockingCollection
)时也可能抛出。根据我的阅读,我得出结论:使用
BlockingCollection.CompleteAdding()
来表示完成是完全可以的,因此需要捕获异常并适当处理(例如退出任务)。在不使用消息内容的情况下,最好的过滤方法是什么?
编辑:它们似乎具有相同的HResult值。
InnerException
吗? - Ghasem