我需要一个Exception既接收消息又int作为参数的类,而宁愿使用现有的类而不是创建我自己的自定义派生异常.
我一直在寻找一个,但它比我想象的更难.
有没有这样的(通常命名的)课程?
编辑
我打算抓住它并显示:"Error " + ex.Message + ex.Code.ToString();.
错误代码用于我不想向用户显示的消息.(用于调试的技术内容等.将显示错误代码, 以便用户可以告诉我他得到了什么代码.)
我更喜欢现有Exception的原因是我希望在我的所有应用程序中都有统一的方法来处理异常,而不必每次都定义它们.
如前所述,最好的事情是为应用程序域创建一个或多个特殊的异常类.一个好的设计还包括优雅地分解的条款.
但是还有另一条路径,很少使用基本Exception类的Data属性.
它是一个字典,允许您将自定义数据添加到任何异常.拦截(捕获和重新抛出)异常并想要添加一些环境信息时很有用.
try
{
using (var reader = File.OpenText(fileName))
{
...
}
}
catch(Exception e)
{
e.Data.Add("Filename", fileName);
throw;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
202 次 |
| 最近记录: |