【发布时间】:2012-05-14 13:50:48
【问题描述】:
我正在开发一个 MVC 3 应用程序,该应用程序将托管在具有多工作进程设置的网络场中。大约有十几个变量存储在 Session 中,但由于 IIS 设置而丢失。
迷路是指当登录过程成功时,我通过日志记录看到我已经设置了会话变量,但是在重定向操作和登陆控制器操作之后,会话变量通常为空。我不确定这是否相关,但这是在 HTTPS 中。
我们正在研究将存储在 Session 中的用户特定设置转移到其他机制的可能性,但有一个变量我将无法做到这一点。鉴于上述部署环境,我有以下问题。
- cookie 是我唯一(最好的?)为用户特定设置存储会话变量的替代方法吗?
- 如果是这样,是否有一种安全的机制来写入 cookie,这样它们就不会被操纵并且仍然可以在多服务器环境中读取?
- 据我了解,
System.Runtime.Caching在上述 IIS 配置中运行时会遇到同样的问题。这是真的吗?
【问题讨论】:
-
您不能将设置保存到数据库中吗?或者您需要在运行时缓存它们?
-
我正计划走这条路,但是当使用 CSLA 作为我的底层数据提供者时,我需要提供一个配置设置来获取该数据,这是一种马车场景。这是我试图为每个用户寻找替代存储的价值。感谢您的回复。
标签: asp.net .net asp.net-mvc iis-7