请任何人建议我如何在asp.net实际工作?
我在部分会议中感到困惑,想简要地了解一下,所以请指导我
我在部分会议中感到困惑,想简要地了解一下,所以请指导我
解决方法
ASP.NET使用Cookie跟踪用户。当您尝试向会话中写入某些内容时,首次将Cookie发送到客户端,类似ASP.NET_SessionId。客户端根据后续请求发送此cookie。由于这个cookie,服务器能够识别客户端并写入/读取相关联的会话数据。重要的是要注意,这个cookie不是持久的(浏览器重新启动时不会生存),而是以
HttpOnly标志发出,这意味着客户端脚本无法访问它。
除了cookie之外,您还可以将ASP.NET配置为使用隐藏字段,或者将会话ID添加到每个请求的查询字符串中。
因此,会话背后的基本思想是将实际数据存储在服务器的某处,客户端在每个请求上发送一些ID,以便服务器可以知道在哪里可以找到其数据。
默认情况下,有3个地方可以存储实际的会话数据:
> In-Proc:会话被存储到应用程序的内存中(最快,但如果在服务器场中有多个服务器,这将不起作用)
> Out-of-Proc:将数据存储到已安装状态服务的单独服务器中(数据存储在单独机器的内存中,这意味着多个Web服务器可以在Web场中工作)
> sqlServer:数据存储在sql Server中(它是最慢但最可靠的,因为会话数据存储在sql Server数据库中,如果Session服务器崩溃,Out-Of-Proc不是这种情况)
>自定义实现:由于ASP.NET的可扩展性,您可以编写自己的会话提供程序,并将数据存储在任何您想要的位置。
这是一篇关于MSDN的很好的文章,探讨了ASP.NET Session State。