【发布时间】:2011-12-15 02:12:59
【问题描述】:
是否可以重载 C# 中的 try/catch 语句?如果做不到这一点,是否可以继承并制作类似的功能?
我们正在将ELMAH 添加到现有的 Web 应用程序中,并且代码广泛使用 try/catch,在验证摘要中显示错误而不是显示错误页面。由于错误在 catch 语句中被捕获,ELMAH 假设错误正在被处理;实际上,它们只是以更美观的方式显示。
这是它正在做的一个示例:
try
{
//code here...
}
catch (Exception ex)
{
customValidatorError.IsValid = false;
customValidatorError.ErrorMessage = ex.Message;
}
理想情况下,重载只会告诉 Elmah 通过 ErrorSignal.FromCurrentContext().Raise(e); 将异常添加到日志中
由于该技术在项目中使用的频率,我不希望在每次使用时都添加该代码。为每个错误页面添加自定义错误页面而不是将错误添加到验证摘要中也超出了项目的范围。
【问题讨论】:
标签: c# asp.net c#-4.0 error-handling elmah