首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

怎么保存一个页面的值

2012-01-28 
如何保存一个页面的值。如何像WinForm中一样,保存一个值,在用户进入这个页面时有效,刷新时依然能保存。用隐

如何保存一个页面的值。
如何像WinForm中一样,保存一个值,在用户进入这个页面时有效,刷新时依然能保存。
用隐藏控件?Session?Cookies?
几种方式各有什么优缺点?
我用TEXT保存一个值,当ReadOnly属性有效后,其值刷新时就会被清空。而ReadOnly属性无效的时候,其值刷新是可以保存。
可我的值就是不希望用户修改啊!如何解决这个问题?头痛!

[解决办法]
Hidden
不可见的 TextBox 
ViewState

这三者.会增加页面字节数,并在load.save增加一点额外的开销,原理基本上差不多


Session
Cache

这二者会增加服务器开销.并且可能不稳定 session会失效.cache会过期或是在服务器资源不够时移除


cookie
会被客户端有意识或是无意识清除


[解决办法]
Session可能会失效,而且增加服务器压力
Cookies不安全,而且客户端禁用了Cookies就没办法了
不希望用户修改,换个控件嘛,LABEL。。
[解决办法]
你可以在postback前使用js控制readonly属性设置为false
[解决办法]
1、HiddenField
优点:简单易用。url简洁
缺点:用户可以通过页面查看HiddenField中的隐私信息
2、Session
优点:简单易用。url简洁,安全性好。性能较强
缺点:稳定性差,容易莫名奇妙的丢失
3、Profile
优点:稳定性好,长久保存;数据安全性好。
缺点:性能较差,需要数据库的访问
4、QueryString
优点:容易被搜索引擎收录
缺点:同HiddenField,Url缀长
5、Cookies
优点:同HiddenField
缺点:依赖于客户端,不是所有的浏览器都支持,也不一定用户的浏览器开放次功能。

热点排行