我有一个具有单页方法的网络表单。我的其他 Web 应用程序将未处理的异常记录到 Web 服务器上的系统事件日志中。由于与我合作的其他开发人员希望在事件日志中看到应用程序错误条目,我希望这个应用程序也能这样做。
但是,当从页面方法内的调用代码中捕获异常时,我让应用程序发送错误电子邮件。发生这种情况时,它不会写入事件日志。注意:页面方法在调用我的邮件通知方法后重新抛出异常。
从我目前阅读的内容来看,ASP.Net 似乎默认将错误记录到事件日志中。我想页面方法/WebMethods 并非如此,因为它们基本上将异常抛出给调用它的客户端代码。
是否有一种简单的方法可以使该异常正确冒泡以便写入事件日志?没有其他应用程序直接从我所看到的内容写入事件日志,所以我认为该应用程序不会创建新源,因为我们的安全人员将很多事情锁定(出于善意,是的安全)。
[WebMethod]
public static object MyPseudoWebMethod()
{
try
{
// My exception spawning unreliable code here
}
catch(Exception ex)
{
// Cleanup ...
this.SendErrorNotification(ex);
throw; // <-- This doesn't bubble up but I'd love for it to!
}
}