Asp.net的状态管理(1)--(C#)
Asp.net的状态管理方式:
(1)Application在首个请求到达创建,在应用程序关闭的释放,当前的应用程序的所有会话都可以使用.
(2)Session它首先是存在服务器端的,它是在用户发出首个请求时创建的用户结束会话:1〉SessionStateModule负责产生的session;2〉HttpApplication在请求的处理管道的在检查的当前的请求的是否实现的可System.Web.SessionState.IRequireSessionState接口,如果是实现就会为当前的请求分配一个session;3〉Web.config中配置<sessionStatecookieless=”true“>则会在URL将当前sessionid带上;4〉Session保存的位置:
<sessionStatemode=“InProc|StateServer|SQLServer”>
<sessionStatestateConnectionString="tcpip=127.0.0.1:42424"mode="StateServer"/>
创建数据库脚本文件在
C:\Windows\Microsoft.NET\Framework\v4.0.30319
下的:
InstallPersistSqlState.sql和
InstallSqlState.sql
可以用下面命令安装保存Session的数据库
aspnet_regsql-Usa-Pmaster–ssadd-sstypec-daspnetdb
一定要开数据库的TCPIP连接,否则不能创建成功
web.config可以配置成:
<sessionStatesqlConnectionString="server=.;database=aspnetdb;uid=sa;pwd=;"allowCustomSqlDatabase="true"mode="SQLServer"/>(3)<inputtype=”hidden”>:就是隐藏域
(4)Cookie:用户每次向服务器发出请求时会自动附加在请求报文中,还可以设置保存时间,以便关闭浏览器后还可以继续保持状态通过服务器设置响应头:Set-cookie:cookie1=cookievalue;path=/告诉浏览器要保存cookie名为cookie1的值,在网站根路劲下。
(5)ViewState:单个页面中控件等的数据上下文,只有当前页面有用,页面上的_viewstate隐藏控件保存的实际上是base64字符串.
(6)url传参数(表单get的请求)querystring[],(表单的post请求)form[]....
,
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。