我試圖將MVC3應用程序與一些Nancy模塊組合在一起。在我的應用程序中,我試圖在MVC3控制器中設置會話變量,然後在Nancy模塊中讀取該變量。當我嘗試讀取Nancy控制器中的變量時,Session對象爲null。無法訪問南希模塊中的ASP.NET會話對象
這是我的MVC3控制器,Nancy模塊和根web.config的要點。
https://gist.github.com/3105219
它看起來像所有(最)掛在當前HttpContext其他對象的不爲空,看起來「正常」的應用程序的MVC3部分比較時。
編輯:進一步測試表明,我無法訪問原始南希應用程序中的ASP.NET會話。我使用本頁底部「創建您的第一個Nancy應用程序」一節中的步驟創建了該應用程序。
https://github.com/NancyFx/Nancy/wiki/Introduction
下面是簡單的南希應用程序的web.config。
https://gist.github.com/3105583
是基於cookie(客戶端)會話存儲而不是服務器端會話存儲?我認爲這是Nancy自己的管理狀態的方法,它與內存會話存儲中的ASP.NET運行時分開。 當我嘗試這個時,即使它被設置在MVC3控制器上,Request.Session [「First_Name」]也不存在。 – 2012-07-13 19:03:16
更多的試驗和錯誤顯示我可以使用Nancy Request.Session來保持Nancy路由的狀態,但System.Web.HttpContext.Current.Session仍然爲空,並且Nancy Request.Session爲空。 – 2012-07-13 19:08:30
@Rob我也在學習階段!基於我的介紹,我想南希並沒有使用System.Web.HttpContext。它使用它自己的上下文類,我想這主要是爲了幫助Nancy在任何環境中運行(不知道,但!)。我剛剛下載了源代碼並運行搜索。 – VJAI 2012-07-13 20:03:10