使用HttpContext.Current.Session["Id"]

3
“HttpContext.Current.Session['Id']”和使用列表保存参数的区别是什么?
2个回答

0

Session可以跨页面和跨请求使用,而List只能在一个请求中使用。它们都可以存储对象,但它们具有不同的对象生命周期。

编辑:根据OP的评论

  • InProc模式将会话状态存储在Web服务器上的内存中。这是默认设置。
  • StateServer模式将会话状态存储在名为ASP.NET状态服务的单独进程中。这确保了如果Web应用程序重新启动,会话状态得以保留,并且使会话状态可用于Web农场中的多个Web服务器。
  • SQLServer模式将会话状态存储在SQL Server数据库中。这确保了如果Web应用程序重新启动,会话状态得以保留,并且使会话状态可用于Web农场中的多个Web服务器。
  • 自定义模式允许您指定自定义存储提供程序。
  • 关闭模式禁用会话状态。MSDN

是的,这正是我想要的。我认为会话不是持久的,这对吗? - 7addan

0

ASP.NET是无状态的。因此,如果您将东西存储在列表中,如果您希望在请求完成后仍然可用,则该列表将需要被持久化到某个地方。

将每个请求视为程序的新调用。如果您希望数据在调用之间保持持久性,则必须将其存储在某个地方。


我该如何存储它,有什么想法吗? - 7addan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接