日期:2014-05-18  浏览次数:20407 次

.net开发都要注意的问题
每个页面都会生成下面这样的话,有的页面多,有的少,如何尽量减少呢?
<input   type= "hidden "   name= "__VIEWSTATE "   value= "dDwyMTI0NzAyNzMyOztsPFNlYXJjaEJhclRvcDppbWdCdG5TZWFyY2g7Pj6HjlPOPtnLeVnE591qqnAVVNOyoQ== "   />

同样是两个网站的首页,差别怎么就那么大呢????
http://www.5173.com/
http://www.9fbank.com(这个是我做的)
希望csdn朋友多多给点建议!!

------解决方案--------------------
楼主可以自己尝试一下,以DataGrid控件举例,绑定一些数据,会看到 <input type= "hidden " name= "__VIEWSTATE " 里会有相当长的一段;
EnableViewState属性设置为false后, <input type= "hidden " name= "__VIEWSTATE " 里的内容就大大减少了!

然而,EnableViewState属性设置为false后,DataGrid的翻页、排序、编辑等自带的功能就不能正常使用了,需要另想办法实现,又或者有时候你本来就不需要这些功能
------解决方案--------------------
网站前台显示,很多东西,你可以不用server的Form,这样的话你就可以完全去掉这些代码了
还有别忘了,没有必要保持状态的,禁用服务器控件的VIRWSTATE也是非常重要的
------解决方案--------------------
那个《input ,,,,》是对页面数据的缓存。如果EnableViewState属性设置为false,页面执行又要连接数据库,反而给人的感觉又慢了。不过也可以在webconfig中设置每个显示多长,这样可以避免一些代理或防火墙的阻止。
------解决方案--------------------
你分别看看这两个站的生成代码, 很明显, 前者的代码整洁有序.
你而后者(你的是吧), 乱, 无序, 净是TABLE, TD, TR.
ASP.NET的SERVER控件能不能我是绝对不用的! 甚至有时GRIDVIEW偶都不用, 直接排个模板, 然后输入.
另外, GRIDVIEW的翻页更不懂恭维, 我一般是用URL带参数, 中PAGE, 然后分别查询.