有没有必要在多个页面写try catch 进行错误处理

wyumening 2014-01-06 04:54:57
看过同事写的一些代码,发现在很多页面都用try catch包裹了起来,在catch块中把错误信息写入到了作为日志的文本文件中,感觉很多地方都重复了,应该可以不用在多个页面都写try catch吧?个人觉得作为替代可以这么做:
在本机开发时不写try catch,以方便调试

在发布到远程服务器之前,多做这么两步

第一步: 在global.asax的applicaton_error事件中进行错误处理,如果有错误的话,写入到日志文件中

第二步: 在web.config的customerrors节点中定义自定义错误页面,如果发生了404或500错误,重定向到自定义的错误页面,程序员可以到日志文件中查看具体的错误信息

个人能想到的就是这些,我想问下我的想法对不对?如果不对的话有没有什么更好的方法?
...全文
157 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
md5e 2014-01-06
  • 打赏
  • 举报
回复
可以在错误事件中直接跳转
引用 3 楼 wyumening 的回复:
[quote=引用 2 楼 liuchaolin 的回复:] 可以在在基类中去写错误事件 但是有时候我们需要自定义错误信息,所以在不同的页面用到try{...}cache{throw(new Exception("自定义错误信息"));} if(xx!="xx"){ throw(new Exception("自定义错误信息")); }
也就是说更好的做法是:在global.asax的application_error事件中写代码做最基本的错误处理,把错误信息写到日志文件中,具体到不同的 页面,如果要根据实际情况做更具体的错误处理,就在页面中写try catch 在catch块中处理?那还有没有必要在web.config中的customerrors节点中定义自定义错误页面?[/quote]
  • 打赏
  • 举报
回复
net的异常处理是有4个相关事件的,具体忘记了,百度下就能找到了 最开始是Page带的,如果没有相关处理事件,则向上找。。。。 最后是application级别的
wyumening 2014-01-06
  • 打赏
  • 举报
回复
引用 2 楼 liuchaolin 的回复:
可以在在基类中去写错误事件 但是有时候我们需要自定义错误信息,所以在不同的页面用到try{...}cache{throw(new Exception("自定义错误信息"));} if(xx!="xx"){ throw(new Exception("自定义错误信息")); }
也就是说更好的做法是:在global.asax的application_error事件中写代码做最基本的错误处理,把错误信息写到日志文件中,具体到不同的 页面,如果要根据实际情况做更具体的错误处理,就在页面中写try catch 在catch块中处理?那还有没有必要在web.config中的customerrors节点中定义自定义错误页面?
md5e 2014-01-06
  • 打赏
  • 举报
回复
可以在在基类中去写错误事件 但是有时候我们需要自定义错误信息,所以在不同的页面用到try{...}cache{throw(new Exception("自定义错误信息"));} if(xx!="xx"){ throw(new Exception("自定义错误信息")); }
Im_Sorry 2014-01-06
  • 打赏
  • 举报
回复
引用 楼主 wyumening 的回复:
看过同事写的一些代码,发现在很多页面都用try catch包裹了起来,在catch块中把错误信息写入到了作为日志的文本文件中,感觉很多地方都重复了,应该可以不用在多个页面都写try catch吧?个人觉得作为替代可以这么做: 在本机开发时不写try catch,以方便调试 在发布到远程服务器之前,多做这么两步 第一步: 在global.asax的applicaton_error事件中进行错误处理,如果有错误的话,写入到日志文件中 第二步: 在web.config的customerrors节点中定义自定义错误页面,如果发生了404或500错误,重定向到自定义的错误页面,程序员可以到日志文件中查看具体的错误信息 个人能想到的就是这些,我想问下我的想法对不对?如果不对的话有没有什么更好的方法?
没有必要,完全可以封装下!!!

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧