2012-02-01 37 views
0

在ASP.NET MVC3中,我注意到我的CSS和JS文件也被調用了Application_BeginRequest。我的CSS和JS文件分別駐留在/ Content和/ Scripts文件夾中。應該爲CSS和JS文件調用Global.asax.cs Application_BeginRequest嗎?

這是正確的嗎?是否真的需要這些文件通過託管代碼管道?

該網站在IIS7(和ASP.NET Web服務器)上運行。

我的模塊配置部分如下所示:

<modules runAllManagedModulesForAllRequests="false"> 
    <remove name="UrlRoutingModule-4.0" /> 
    <add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="" /> 
    <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" preCondition="managedHandler" /> 
    <add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" preCondition="managedHandler" /> 
    <add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" preCondition="managedHandler" /> 
</modules> 

回答

0

您應該檢查this answer。很可能你有同樣的問題。如果沒有,那麼我會檢查你的管道模式+處理程序配置。

更新:對不起,只是看到你已經有[runAllManagedModulesForAllRequests =「false」]。您是否使用一些分析器或自定義虛擬路徑提供程序? 在我的情況下,我使用自定義虛擬路徑提供程序來提供嵌入到程序集中的文件。爲此目的,爲幾個子目錄創建特殊配置。

+0

謝謝Volodymyr。不,我不使用任何自定義虛擬路徑提供者:( – willem 2012-02-01 12:06:11

+0

可以添加您的「處理程序」配置部分嗎?以及您使用哪種管道模式? – 2012-02-01 12:17:12

+0

嗨!您是否解決了問題?如果是,那麼您是否可以更新您的問題向用戶提供更多信息? – 2012-02-03 13:54:58

0

自己的回答:最後我找不到讓靜態文件通過MVC管道的方法。所以我去了一個hacky解決方案,我檢查Application_PostAuthenticateRequest中的URL擴展,並在請求靜態內容時返回(即「.css」,「.js」等)。

不漂亮。

相關問題