ASP.NET会话管理 - 用户决定Cookie或HttpSessionState

时间:2012-10-14 04:42:36

标签: asp.net session cookies session-state

我正在开发一个小型Web应用程序,部分要求是允许用户选择管理会话的方式:使用cookie或HttpSessionState。我研究过如何使用cookies(http://www.codeproject.com/Articles/31914/Beginner-s-Guide-To-ASP-NET-Cookies)和Sessions(http://msdn.microsoft.com/en -us /库/ ms178581(v = VS.100)的.aspx)。我将使用非持久性cookie。

应用程序将收集有关用户(姓名,年龄,学校)的一些数据,并根据用户输入的数据获取此会话数据并在另一页上显示消息。

我遇到的问题是如何处理用户如何选择管理。该信息也是会议的一部分!将在Web应用程序的每个页面上检查选择。

我研究了全局(http://www.dotnetperls.com/global-variables-aspnet),但这不是一个好方法,因为它可以在不同的用户之间共享,这不是我想要的!如果我错了,请纠正我。如何在不实际使用会话或cookie的情况下临时存储此数据?

甚至可以使用cookie和会话相互排斥吗?

1 个答案:

答案 0 :(得分:1)

在一天结束时,你应该把它保存在某个地方。此选项如果不是持久性的,因为每次用户访问网站时可能会被询问/更改,最简单的方法是将其保存在隐藏的html字段中。当用户提交表单时,如果您使用的是html表单,则该值将传递到下一页。或者您可以检索该值并在asp.net中手动发送(例如转移)。

您也可以使用ViewState(不推荐)。如果信息应该保留以供将来使用,请尝试在ASP.net中使用用户配置文件并将其另存为数据库中的自定义字段。这个真的很麻烦。