2011-05-12 65 views
1

我正在構建一個ASP MVC應用程序。HttpContext.Current.Session爲空請求圖像。爲什麼?

當我請求到控制器的途徑,例如:

http://myserver/sales/id/5 

會話對象HttpContext.Current.Session被正常使用。

然而,當我請求一個圖片或腳本,例如:

http://myserver/Scripts/jquery-1.4.1.js 

會話對象HttpContext.Current.Sessionnull

如何時,有沒有「我可以區別於其他這種情況真正的「會話(例如第一次登錄)?

回答

4

爲什麼你需要一個會話來檢索靜態文件?

除非您使用動態處理程序,否則絕對不需要會話來檢索此類內容。

我的觀點是,會話不會爲檢索靜態內容提供任何有用的用途,因此它不可用。

2

@Oded是正確的,這是在asp.net中的優化。如果您需要會話可用,那麼您將需要請求轉至已指示需要會話的處理程序。如果你正在編寫你自己的處理程序,那麼它只需要實現標記接口​​。

此優化不僅適用於當前請求,而且您以串行方式處理任何使用同一會話進行的多個請求的並行請求。請閱讀我的blog post瞭解更多信息。

+1

我在您的博客文章中獲得404。 – Dror 2013-03-11 23:30:46

+0

謝謝你讓我知道。我已更新鏈接到我的博客的新位置。 – 2013-03-12 13:48:53

相關問題