1

我的 MVC 应用程序在 Windows 身份验证下运行。

我在我的应用程序的各个地方都使用了 TempData。问题是,他们很清楚会话超时。但是,Windows 登录仍在运行。在用户注销他的 Windows 登录之前,我如何将它们设置为保持不变。我的意思是,不应该有任何超时。是否可以?

4

2 回答 2

1

您可以在 Web 配置中更改会话超时值:

<sessionState mode="InProc" timeout="20"/>

只需将分钟超时值从 20 分钟更改为更高的值

例如 2 天:

<sessionState mode="InProc" timeout="2880"/>
于 2012-12-06T10:04:12.803 回答
0

据我了解,TempData 只会在下一个动作之前保持它的价值,这就是为什么它被称为“Temp”Data。并且会话将只能维护当前用户会话的数据。

如果您不想超时(这对我来说听起来很奇怪,而且我可以闻到糟糕的代码实践),然后使用缓存或将数据持久化到数据库。您可以根据需要保留数据。

于 2012-12-06T10:49:38.830 回答