ASP.NET中的状态

以前很早就想对ASP.NET的状态写篇文章,今天刚好灯泡坏了,黑漆漆的一片,本来已经犯困了,但是既然要写笔记就得认真的写,对自己是个温习,对别人也是个负责,于是乎泡杯红茶,红茶苦所以能让我提起点精神,前面说了那么多废话了,现在我们进入正文,以前我们在学计算机的时候都是单机应用程序(运行在一台计算机上的程序),随着程序的发展先后出现了C/S结构,后来出现了B/S结构,现在最火的也是B/S结构,B/S结构相对单机应用程序和C/S结构应用程序发生了很大的变化,一个很重要的问题是数据如何保存下来?也就是数据如何从一个页面传递到另一个页面?在好多页面当中如何共享一些数据?这里就不得不说ASP.NET的中的State了,再说ASP.NET状态之前先说一个HTTP协议,在B/S结构中一个重要的传输协议是HTTP协议,它是一个“无状态”的协议,为什么说它是一个无状态的协议呢?你访问一个页面后,它会把你请求的资源发给你后,抛弃页面变量,控件属性等(在这里举个例子做过ASP的人都知道在一个页面中你在input 中的输入“我叫张三”你刷新一下这个页面后,里面的value就等于空了如,再比如在有些网站注册会员的时候填写了大量信息,当点“提交”按钮发送给服务器的时候发现一个信息填写错误了服务器返回后,文本框上的值都没了,又得一个个再重新填写是件很痛苦的事情)由此来看它抛弃了控件的属性,并不保存下来,所以从HTTP协议来看你的这个页面和你要跳到的下一个页面完全是独立的,在两个页面之间作为HTTP协议来说是没有任何联系的,所以想在两个页面中传送数据就得用到ASP.NET中的状态了。那有人会说了在ASP.NET中拖放一个Label Control 在代码里把它的Text属性设为比如:“我叫李四” this.Label1.Text = "我叫李四";,再拖放一个Button Control单击这个Button后“我叫李四“还在呀,那是因为ASP,NET中所有控件都有一个共同的属性ViewState这个属性默认为true,如果你把label1的EnbleViewState设置为false,那么你再单击这个Button就会发现“我叫李四”不见了,所以ViewState是ASP,.NET专门提出来用于页面间保存数据用的。
    既然是B/S结构,那么当然有:基于客户端的状态管理比如:cookie;基于服务器端的状态管理比如:session等,在这里就不多做介绍了
    实质上ASP.NET状态就是在页面间如何传递数据,共享数据的一种技术

    本文来自优快云学习空间,转载请标明出处:http://student.youkuaiyun.com/space.php?uid=1282460&do=blog&id=50480

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值