【问题标题】:Session in asp.netasp.net 中的会话
【发布时间】:2026-01-23 11:35:01
【问题描述】:

我需要一个关于使用 c# 在 asp.net 中的会话的详细示例 例如(在登录操作中使用会话

【问题讨论】:

  • 请编辑您的问题以包含详细信息。你想看看登录是如何工作的吗?或者您想知道会话持续多长时间?如何在会话中存储和检索数据?
  • 我认为在这位新成员有机会提供一些细节之前,我们不应该投票关闭。如果没有详细信息,则应关闭。
  • 您可能也对此帖子感兴趣http://*.com/questions/769338/use-of-session-in-high-traffic-websites

标签: asp.net session login


【解决方案1】:

Session 是 ASP.Net 中的系统,您可以在其中保存基于用户的对象和变量,因此这些项目可以跨回发使用。

向 Session 添加变量:

Session["key"] = myVar;

检索变量

myVar = Session["key"];
myVar = (MyType) Session["key"];

在 Session 中,您可以保存任何 .NET Framework 类型,但您应该非常清楚这种设计可能会对您的应用程序产生影响,因为这会带来可伸缩性问题。

this question的回答中有一个很好的实用类可以帮助你抽象会话对象,也可以看看。

【讨论】:

  • “但是你应该非常清楚这种设计对你的应用程序的影响”——同意——例如,存储一个 1MB 的数据集可能会导致 20MB 的服务器存储空间来打包和解包它,这将发生在每个页面请求上。
【解决方案2】:

抱歉,不完全确定您对登录内容的要求,但使用会话相当简单,MSDN 中的以下两页应该可以帮助您入门:

如果您在页面上有标准的login controls,则可以处理LoggedIn Event 以在用户会话状态中存储更多详细信息。

【讨论】:

    【解决方案3】:

    您可以考虑使用表单身份验证:http://msdn.microsoft.com/en-us/library/aa480476.aspx

    【讨论】: