我们为SharePoint部署构建了一个简单的IHttpModule,它捕获异常并使用以下基础将内容通过电子邮件发送给开发人员:

public class ExceptionReporter : IHttpModule
{
    //snip

    public void Init(HttpApplication context)
    {
        context.Error += new EventHandler(context_Error);
    }

    void context_Error(object sender, EventArgs e)
    {
        //Do stuff here
    }

    //snip
}


为了尝试以“适当”的方式部署它,我们使用SPWebConfigModification将类型添加到web.config的节点。

我们的问题是中的第一个是Microsoft.SharePoint.ApplicationRuntime.SPRequestModule,它捕获并清除所有异常,从而阻止处理程序处理错误。我们已经通过手动修改web.config以便将处理程序放在SPRequestModule之前,以及使用Reflector查看SPRequestModule的操作来验证了此行为。

使此条目进入web.config并出现在SPRequestModule之前的“最佳实践”方法是什么?

最佳答案

您是否试图将Application_Error事件挂接到Global.asax中,您应该能够执行在模块中尝试执行的操作。

关于sharepoint - 在httpModules节点的开头插入SPWebConfigModification,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1295802/

10-13 02:38