我们公司正在迁移到基于Ektron的C#网站。我只是模糊地熟悉C#语言,之前我没有使用过IIS。
我正在试图弄清楚如何挂钩异常处理机制。我想确保如果抛出异常并且没有被捕获,我可以发送电子邮件并重定向到错误页面。
据我所知,重要的文件是web.config和global.asax。但据我所知,web.config所能做的就是指定一个重定向URL(我不知道如何恢复抛出的Exception对象中的信息)。我的项目甚至没有global.asax文件。 (我不确定是否需要创建它,或者它是否已弃用,或者Ektron是否为我处理)。
答案 0 :(得分:2)
在Global.asax中使用Application_Error
答案 1 :(得分:0)
请参阅“ASP.NET Health Monitoring Overview”。只需配置,您可以安排它登录事件日志,数据库或任何地方。
答案 2 :(得分:0)
我使用ELMAH(ASP.NET的错误记录模块和处理程序)来发送您的电子邮件。您可以通过NuGet Gallery获取它,您只需在web.config中添加几行。如果您通过NuGet安装,它甚至会更新您的web.config。 Scott Hanselman有blog post如何实现它。这篇文章有点陈述(2009年4月),但ELMAH并没有发生太大的变化。
要重定向到错误页面,我会使用内置的ASP.NET custom error pages。