如何在asp.net视图渲染中捕获异常?

问题描述:

我看到有一个很好的[HandeError]属性可以应用于控制器类或方法。 如果我想捕捉并处理渲染期间发生的异常,我有什么选择?如何在asp.net视图渲染中捕获异常?

我更喜欢使用在Global.asax:

protected void Application_Error(object sender, EventArgs e) 
{ 
    var exception = Server.GetLastError(); 
    // do something with the exception 
} 

编辑再评论

ASP MVC仍是ASP.NET,所以是这仍然能正常工作。

如果出于某种原因想要以不同方式处理渲染错误,则可以覆盖默认的WebFormsViewEngine并围绕视图生成方法包装try catch,但这有点矫枉过正。

+0

是的,这是很好的方法,在asp.net中工作正常。我确定它不支持mvc ... 我会检查并接受答案,然后 – st78 2010-07-23 10:37:37