2013-05-06 95 views
2

我目前在我的控制器中使用Session [「Name」] =「一個名字」工作。但是當我嘗試刷新頁面時,會話變爲空白。有人知道爲什麼ASP NET MVC會話刷新丟失

我的配置文件有:

的sessionState模式= 「InProc方式」 customProvider = 「DefaultSessionProvider」>

與供應商的ConnectionString

回答

1

首先嚐試添加下面的屬性到您的sessionState元素(在網頁.config):

timeout="10080" 

(即1周,以分鐘爲單位)。

您的會話應該然後生存至少幾分鐘。由於您將它存儲在Proccess(mode =「InProc」)中,因此當您的IIS應用程序池的工作進程重新使用該進程中存儲的所有會話數據時,將丟失該數據。

如果您需要存儲會話數據的時間比您的工作進程還活着(或者如果您想要使用多個工作進程甚至多個Web服務器)更長時間,則需要將會話數據存儲在外 - (例如在SQL中,在網絡共享上或在AppFabric中)。