【发布时间】:2010-02-12 14:29:11
【问题描述】:
我在 ASP.NET 兼容模式下的 Asp.net 网页中托管 WCF 服务 (AspNetCompatibilityRequirementsMode.Allowed)。我写了简单的HttpModule:
public class ExceptionInterceptor : IHttpModule
{
public ExceptionInterceptor()
{
}
public void Dispose()
{
}
public void Init(HttpApplication context)
{
context.Error += new EventHandler(context_Error);
}
void context_Error(object sender, EventArgs e)
{
// do something
}
}
web.config:
<httpModules>
<add name="ExceptionInterceptor" type="HttpModules.ExceptionInterceptor, HttpModules"/>
</httpModules>
我的问题是,为什么在服务中发生未处理的异常后,代码没有进入我模块的context_Error(object sender, EventArgs e)函数中。
更重要的是,代码甚至没有在 Globals.asax 中输入Application_Error(object sender, EventArgs e)。
谁能给我解释一下?
WCF 服务中全局异常处理的最佳选择是什么?
问候
【问题讨论】:
标签: c# .net asp.net wcf httpmodule