在ASP.NET中向AppDomain添加事件处理程序的正确方法是什么?

时间:2013-12-03 19:16:59

标签: asp.net

我希望能够在ASP.NET应用程序中记录第一次机会异常,way you do this是通过处理AppDomain.CurrentDomain.FirstChanceException:

    AppDomain.CurrentDomain.FirstChanceException += 
        (object source, FirstChanceExceptionEventArgs e) =>
        {
            Console.WriteLine("FirstChanceException event raised in {0}: {1}",
                AppDomain.CurrentDomain.FriendlyName, e.Exception.Message);
        };

但我不确定的是你应该在ASP.NET应用程序中调用它。每个应用程序是否有一个AppDomain,所以这可能会进入Application_Start事件?或者可能有多个AppDomains,这会错过其中一些?或者这可能以某种方式添加处理程序两次?

换句话说,这个事件处理程序创建代码应该去哪里?

1 个答案:

答案 0 :(得分:0)

Global类中的Application_Start应该是放置它的好地方。 但是,当您尝试执行的所有操作都是捕获异常时,为什么不在Global.asax文件中使用Application_Error函数:http://msdn.microsoft.com/en-us/library/24395wz3.aspx