我正在使用 WebMatrix (C#) 为我工作的组织设计 Intranet Web 应用程序。
我已经创建了一个数据库驱动的站点,目前正在开发另一个站点,并且一段时间以来,我一直在 Session 变量随机变为 null 并引发错误方面遇到一些麻烦。如此之多,一个简单的 Session 变量改为使用服务器缓存内存进行切换(我最初认为它会更不稳定,但到目前为止还有待观察......)
一个问题是:Session 变量有什么实际用途吗?如果它真的像看起来那样不稳定,那么它们似乎一无所获。\
我知道它们在技术上是 cookie,所以我知道不应该依赖它们的数据,但这就是问题所在。我需要将数据发送到我“可以”依赖的其他页面。这忽略了 Session 变量和 cookie。
我通常远离查询字符串或 url 数据,因为它们公然“纯文本”显示任何敏感信息(如社会安全号码),即使 SSL 也无济于事。
服务器缓存也是易失性的,不能依赖。
AppState 变量不是用户特定的。
这留下了隐藏的输入字段......这里的问题是,有时在“发布”之后我会执行 Response.Redirect 等,因此 C# 并不总是在发布后呈现页面(似乎)。
也许这只是我缺乏知识,但无论我走哪条路,我似乎都走投无路了。
我真的必须将所有页面信息与每个页面一起保存到一个单独的数据库中,并使用另一个页面上的 sql 查询来检索它,只是为了获得可靠而不是“公然”显示的信息从一个页面到另一个页面吗?即使使用多个不同的用户,这种方法也会成为问题,不是吗?