2008-10-02 23 views
0

我使用的WebForms的應用System.Web.Routing裝配system.web.routing時。運行部署在win2008/IIS7上的應用程序時,我收到以下消息。狀態服務使用的WebForms

會話狀態只能在enableSessionState設置爲true時使用,無論是在配置文件中還是在Page指令中。請確保System.Web.SessionStateModule或自定義會話狀態模塊包含在應用程序配置的\\部分中。

這使用我已經配置路由時,僅僅是一個問題。直接導航到aspx頁面時,這不是問題。

的EnableSessionState已在web.config和Page指令都被打開。我已將Session條目添加到web.config的httpmodule中。

這用我的工作站上的Visual Studio開發的時候是不是一個問題。試圖在Win 2008

+0

看看這裏:http://stackoverflow.com/questions/400236/asp-net-routing-do-custom-routes-completely-skip-everything-in-the-global-asax#400289 – grenade 2009-06-08 09:39:56

回答

1

我有同樣的問題,我想我知道問題是什麼IIS7運行下的應用程序時,它僅僅是一個問題。

我試圖實現路由系統下FileNotFound頁面(東西我還沒有搞清楚的是如何既給一個FileNotFound頁面,並給予在頭一個404響應)

我」什麼我發現,出於某種原因,使用BuildManager註冊的頁面似乎沒有會話上下文(實際上沒有請求頁面,只是實例!)。

至少這就是它似乎做。


我現在不太確定我以前的說法。顯然,圖像請求在物理上不存在時也會通過路由系統。這會導致在圖像路徑匹配時調用IRouteHandler。我非常肯定會在請求圖像時不存在會話對象,以便在路由到的頁面嘗試訪問它時可能會導致問題。

0

我認爲你所描述的與我的question類似。

這可能是因爲你的IIS7位於不同模式NAD更像II6超過7上運行:

幾個問題:1。 是您的正確映射重定向你的要求? 2.當你的請求被映射到什麼地方? 3.如果您通過此頁面追蹤哪行代碼會產生錯誤(它是否會觸發您的代碼)?