All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
ASP.NET中获取URL的方法_[Asp.Net教程]
my.ini详解_php资料_编程技术
Asp.Net中NHiernate的Session的管理_[Asp.Net教程]
SQL数据库高级教程:SQL UNION 和 UNION ALL_[SQL Server教程]
修改SQL Server2005的sa用户密码_[SQL Server教程]
ASP.NET2.0服务器控件之创建自定义控件_[Asp.Net教程]
编辑web.config,保证ASP.NET的安全_.net资料_编程技术
.NET基础知识-.NET框架_[Asp.Net教程]
C#中利用SharpZipLib进行压缩和解压_[Asp.Net教程]
使用,PHP,快速生成,Flash,动画_php资料_编程技术
Reading number is top 10 pictures
这年头,找个靠谱的妹子太难了
什么叫国家
This is heaven to some path
A man's favorite things6
yy365网站上的美女2
Cesarean section, bloody, silently into it!2
开始让人感动,后来......
Look for from human art net, is good--2
9.3阅兵全景图4-陸海空现代化兵种方阵梯队
China's programmers are live what kind, had a look at will know that
Download software ranking
Jinling thirteen stock
豪门浪荡史
Tram sex maniac 2 (H) rar bag11
传奇私服架设教程-chm
Call Of Duty2
电车之狼R
I'm come from Beijing1
Love the forty days
apache-tomcat-6.0.33
株洲本地在线棋牌游戏
delv published in(发表于) 2014/1/23 3:15:07 Edit(编辑)
浅议ASP.NET中Session的状态保持方式_[Asp.Net教程]

浅议ASP.NET中Session的状态保持方式_[Asp.Net教程]

浅议ASP.NET中Session的状态保持方式_[Asp.Net教程]

  ASP.net提供了Session对象,从而允许程序员识别、存储和处理同一个浏览器对象对服务器上某个特定网络应用程序的若干次请求的上下文信息。Session对应浏览器与服务器的同一次对话,在浏览器第一请求网络应用程序的某个页面时,服务器会触发Session_onStart事件;在对话超时或者被关闭的时候会触发Session_onEnd 事件。程序员可以在代码中响应这两个事件来处理与同一次对话相关的任务,如开辟和释放该次对话要使用的资源等。


  在ASP.NET的程序中要使用Session对象时,必须确保页面的@page指令中EnableSessionState属性是True或者Readonly,并且在Web.config文件中正确的设置了SessionState属性。


  ASP.NET中Session的状态保持是由web.config文件中的标记下的标记的mode属性来决定的。该属性有四种可能的值:Off、Inproc、StateServer和SQlServer。


  设为Off会禁用Session。


  Inproc是缺省的设置,这种模式和以前的ASP的会话状态的方法是类似的,会话的状态会被保存在ASP.NET进程中,它的优点是显而易见的:性能。进程内的数据访问自然会比夸进程的访问快。然而,这种方法Session的状态依赖于ASP.NET进程,当IIS进程崩溃或者正常重起启时,保存在进程中的状态将丢失。


  为了克服Inproc模式的缺点,ASP.NET提供了两种进程外保持会话状态的方法。


  ASP.NET首先提供了提供了一个Windows服务:ASPState,这个服务启动后,ASP.NET应用程序可以将mode属性设置为“SateServer”,来使用这个Windows服务提供的状态管理方法。


  除了在web.config文件中设置mode属性为StateServer外,还必须设置运行StateServer服务器的IP地址和端口号.如果在IIS所在的机器运行StateServer则IP地址就是127.0.0.1,端口号通常是42424.配置如下:


  mode=”StateServer”
  stateConnectionString="tcpip=127.0.0.1:42424"


  使用这种模式,会话状态的存储将不依赖IIS进程的失败或者重启,会话的状态将存储在StateServer进程的内存空间中。


  另一种会话状态模式是SQLServer模式。这种模式是将会话的状态保存在SQL Server数据库中的。使用这种模式前,必须至少有一台SQL Server服务器,并在服务器中建立需要的表和存储过程。.NET SDK提供了两个脚本来简化这个工作:InstallSqlState.sql和UnInstallSqlState.sql。这两国文件存放在下面路径中:



  \Winnt\Microsoft.NET\Framework\\


  要配置SQL Server 服务器,可以在命令行中运行SQL Server提供的命令行工具osql.exe



  osql -s [server name] -u [user] -p [password]


  例如:



  osql -s (local) -u as -p “”-i InstallSqlState.sql


  做好必要的数据库准备工作后,将web.config文件中的sessionstate元素的mode属性改为”sqlserver”,并指定SQL连接字符串。具体如下:



  mode="SQLServer"
  sqlConnectionString="data source=127.0.0.1;userid=sa;password=;Trusted_Connection=yes"


  使用SQLServer模式处了可以使Session的状态不依赖于IIS服务器之外,还可以利用SQL Server的集群,使状态存储不依赖于单个的SQL Server,这样就可以为应用程序提供极大的可靠性。

  来源:网络







添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.