viewstate 对性能影响大吗?

小灰狼 2012-08-15 09:50:33
我做的一个页面,运行的时候产生了110K左右的 viewstate 内容,整个页面一共240多K,项目组长说这个会影响性能,让我把 enableviewstate 设为 false

但是如此一来,就失去了 asp.net 编程的意义了,另一方面,开发的工作量大了很多
...全文
247 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
如果不用viewstate就得自己去写隐藏域来保存画面状态,一样的会增加网络传输量。但是可以关闭那些灭有必要的viwestate。占到一半也太恐怖了,是不是把列表的大数据也给扔进去了
zmhkobe 2012-08-16
  • 打赏
  • 举报
回复
肯定有影响的
wz_jyp 2012-08-16
  • 打赏
  • 举报
回复
速度会慢很多。。。
zhangdaowu5 2012-08-16
  • 打赏
  • 举报
回复
一般来说影响不是很大。
happytonice 2012-08-16
  • 打赏
  • 举报
回复
是好影响还是坏影响,具体分析
xuan.ye 2012-08-16
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]
引用 6 楼 的回复:

局域网没问题。。。

项目组长都说换了,迁就他吧


可是老板说,项目进度太慢了
照这种做法,项目进度怎么快得起来
另外,在老板眼里,只知道做了多少页面,多少功能,可不管你具体用了什么技术
[/Quote]
老板,尤其是读过MBA的老板,尤其是当过程序员读过MBA的老板,够水。。。
项目组长不写demo吗?一般都是项目组长写好demo,别人照着扒的
缪军 2012-08-16
  • 打赏
  • 举报
回复
viewstate可以存放在服务器端的,
这样的话,你的html就足够“清爽了”
小灰狼 2012-08-15
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]

局域网没问题。。。

项目组长都说换了,迁就他吧
[/Quote]

可是老板说,项目进度太慢了
照这种做法,项目进度怎么快得起来
另外,在老板眼里,只知道做了多少页面,多少功能,可不管你具体用了什么技术
小灰狼 2012-08-15
  • 打赏
  • 举报
回复
那些状态我是需要用到的

页面的控件大多数是根据数据库中的信息添加上去的。
特别是在一个 repeater 中,一共套了三层 repeater,里面放的 checkbox, radiobutton,文本,全部都是从数据库中取出来的,提交之后,我需要从 repeater 中读取这些 checkbox, radiobutton 的 checked 状态,禁用此外层的 repeater 的 viewstate 之后,生成的 viewstate 少了70多K。

可能套得有点深,我看了生成的源代码,每个 checkbox 的 id 都很长,例如一个 checkbox 的内容有这么长:
<input id="ctl00_holder_AARCP_rptDependent_ctl03_rptDependentSubTypes_ctl02_rptDependentDocType_ctl02_cbSelect" type="checkbox" name="ctl00$holder$AARCP$rptDependent$ctl03$rptDependentSubTypes$ctl02$rptDependentDocType$ctl02$cbSelect" onclick="docTypeClick(1, 'ctl00_holder_AARCP_rptDependent_ctl03_rptDependentSubTypes_ctl02_rptDependentDocType_ctl02_cbSelect', 'ctl00_holder_AARCP_rptDependent_ctl03_rptDependentSubTypes_ctl02_rptDependentDocType_ctl02_rbtnAnd', 'ctl00_holder_AARCP_rptDependent_ctl03_rptDependentSubTypes_ctl02_rptDependentDocType_ctl02_rbtnOr');" />
  • 打赏
  • 举报
回复
利用JS+Ajax等局部的一些操作,尽量少用服务器控件
杰拉尔 2012-08-15
  • 打赏
  • 举报
回复
viewstate 是存储页面状态 你只要保证你禁用后不影响你的页面的功能和需求 禁掉会快些
Net攻城狮 2012-08-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

viewstate 是把数据存放在页面 asp.net 页面 会自动生成, 存放在隐藏域中,如果用不到他的功能就不要加,因为 他会消耗页面展示速度,
[/Quote]
因为viewstate 是把后台数据输出到前台页面,所以很消耗
Net攻城狮 2012-08-15
  • 打赏
  • 举报
回复
viewstate 是把数据存放在页面 asp.net 页面 会自动生成, 存放在隐藏域中,如果用不到他的功能就不要加,因为 他会消耗页面展示速度,
cniaomingjian 2012-08-15
  • 打赏
  • 举报
回复
只知道用多了不好,影响速度,在看视频时,老师从ViewState的使用上可以看出技术水平,生成的隐藏字段越多,就要想办法去掉无关的,少用服务器端控件。不过挺难的,自己才刚学~~
xuan.ye 2012-08-15
  • 打赏
  • 举报
回复
局域网没问题。。。

项目组长都说换了,迁就他吧

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧