ASP.NET中的ViewState
曾经在两次面试中都遇到了这个问题,就是ViewState中存储的变量到底存储在哪里。由于基础比较差,以前在学习的时候,就没有注意
到这里的细节,包括Session中存储的变量,所以我想ViewState存储变量必定大有学问。到网上一查,果然,贴出一篇大牛文章:
http://www.cnblogs.com/yzxchoice/archive/2006/09/08/498499.html
根据自己的感受,做一点总结:
1.ViewState中的值存储在隐藏的ViewState控件里,我想这是最关键的一句话了。
2.至于ViewState控件是如何来的,应该是表单标明runat=server,ASP.NET在输出页面时就会自动添加上一个隐藏域:
3.如果在后台直接给ViewState集合赋值,那么ViewState的用法就和Session一样了。
4.对于ViewState的安全性问题,ASP.NET提供的两种方式:防篡改;加密。具体见上面的链接。
5.Session中的值保存在服务器的内存上。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。