在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
最近做一个项目,直接拷贝了前辈写的程序,结果报错了查了半天都没查出原因,也看不出哪里报错,最后发现有一个错误被try...catch了,所以我们做项目的时候一般不需要try...catch。 假设所有的异常都没有处理那我们可以在global.asax里面处理 protected void Application_Error(object sender, EventArgs e) { } 错误页配置 1、在webconfig里面配置如下: <customErrors mode="RemoteOnly" defaultRedirect="~/PageError.htm"> <error statusCode="403" redirect="NoAccess.htm" /> <error statusCode="404" redirect="FileNotFound.htm" /> </customErrors> </system.web> 如上代码: mode有3种模式,如果配置为off他将把所有的错误原封不动的暴漏给用户配置为on的时候遇到错误会自动跳到不同的错误页面,最后一个RemoteOnly本地暴漏错误 远程屏蔽错误显示指定页面。 2、把整个项目的错误记录到日志中
private static ILog logger = LogManager.GetLogger(typeof(Global)); protected void Application_Error(object sender, EventArgs e) { string errorMsg = Context.Error.Message + Environment.NewLine + Context.Error.StackTrace + Environment.NewLine + "==========================================================" + Environment.NewLine; //1.把错误记录的日志中 logger.Error("网站出现未处理异常", HttpContext.Current.Server.GetLastError());
|
请发表评论