绕过来自MVC模块的ASP MVC包请求

时间:2015-07-08 11:24:36

标签: asp.net-mvc bundle httpmodule

我有用于URL加密的HttpModule;我注意到这个模块也拦截了MVC捆绑请求;即使我使用以下设置:

<modules runAllManagedModulesForAllRequests="false">
<add ..preCondition="managedHandler" />
</modules>

有没有办法绕过来自HttpModule的MVC捆绑请求的拦截?

1 个答案:

答案 0 :(得分:1)

因此,为了忽略httpmodule中的某些路由,您可以使用Application_BeginRequest或Application_EndRequest,请执行以下示例,忽略aspx页面或检查您要忽略的路径

示例:

 private void Application_BeginRequest(Object source,  EventArgs e)
    {
        HttpApplication application = (HttpApplication)source;
        HttpContext context = application.Context;
        string filePath = context.Request.FilePath;
        string fileExtension =  VirtualPathUtility.GetExtension(filePath);
        if (fileExtension.Equals(".aspx"))
        {
            return;
        }
    }

但是如果你的功能与某些应用程序模块有关,我建议使用Filters(MVC sepcific和模块)而不是HttpModules(特定于完整应用程序)。