开发者

ASP.NET customErrors with mode=remoteOnly and global.asax handling exceptions

开发者 https://www.devze.com 2023-01-08 11:09 出处:网络
I have custom errors set in the web config file as follows: <customErrors mode=\"RemoteOnly\" defaultRedirect=\"GenericError.aspx\" />

I have custom errors set in the web config file as follows:

<customErrors mode="RemoteOnly" defaultRedirect="GenericError.aspx" />

Fine and dandy... I like that mode="RemoteOnly" facilitates development...

For unhandled exceptions, I have in global.asax:

Sub Application_Error(ByVal sender As Object, ByVal 开发者_运维知识库e As EventArgs)
    Response.Redirect("GenericError.aspx")
End Sub

However, unhandled exceptions are going to the generic error page instead of the informative yellow screen of death preferred by developers. I can comment out the redirect in global.asax, but then I need to remember to change it for the production environment. Is there a way I can check in Application_Error whether I am remote or not to determine whether to redirect?


You do not need the Response.Redirect in the Global.asax. It duplicates the behaviour of the <customErrors> tag. RemoteOnly will give end users the custom error message and local usrs the standard asp.net error page. If your developers use a local web server for development you have both in one.

Another approach is to set the <customErrors> to Off on development servers and set it to On in the production environment. There are usually many items in the web.config that need changing so it is no more of a hardship.


You shouldn't even need the line in Application_Error if you have the defaultRedirect set in your web.config.

0

精彩评论

暂无评论...
验证码 换一张
取 消