我应该将每个异常包装在一个更有意义的异常中吗?包装含义使异常成为新异常的内部异常,并抛出“新”异常。
这样做时我需要考虑哪些因素?
包装异常的想法是因为:
SQL Server可能会从T-SQL级别抛出一堆异常。我的C#API只处理SQLException(句柄意味着有一个catch块),所以我想将异常包装到我的API可以处理的类型中。这只是一个例子,SQL Server只抛出SQLException,但这个概念是对的吗?
我认为抛出“新”异常,就像上面提到的那样,会产生一个不是真正原因(dev需要知道)的原因,因此对最终用户来说会更友好并隐藏敏感的实现真实/第一例外的细节。
由于