ViewState的可接受大小是多少

时间:2010-05-27 13:51:19

标签: asp.net viewstate

想知道每页ViewState的大小是多少?我应该开始担心的程度是什么     对于viewstate大小有没有客观的衡量标准?

感谢任何意见:-)干杯,X。

6 个答案:

答案 0 :(得分:2)

这取决于您的最终用户。 对于页面大小不是重要标准的内部应用程序,我不会过分担心它 Viewstate本身不是问题,当它开始减慢你的应用程序速度时会出现问题,因为它会在你的客户端和你的服务器之间来回发送这个viewstate。

您必须考虑将视图状态发送给用户以在页面源中呈现,但它也将被发送回您的服务器以保持该页面的状态,并且它将被加载到内存中

如果最终用户的互联网连接速度较慢,则网页越大,对他们来说就会越慢,越痛苦。

如果您的托管服务提供商根据传输的数据向您收费,您可能希望尽可能减少它。特别是如果你有很多用户......

还要考虑服务器上的可用内存,因为每个用户在每个请求的RAM中加载了视图状态。

答案 1 :(得分:2)

你需要让它比Borg Cube小:

http://weblogs.asp.net/infinitiesloop/archive/2006/08/03/Truly-Understanding-Viewstate.aspx

  

ViewState将添加您的网络应用   与众不同。   表现是徒劳的。

答案 2 :(得分:1)

这取决于.....如果你有1个用户,那么与你拥有一百万用户相比,大小并不重要。你还需要知道你有多少RAM,如果你的RAM用完了

答案 3 :(得分:1)

我不确定视图状态是否具有“可接受的大小” - 它只取决于页面的大小和复杂程度。我知道它很容易变得臃肿并且比它需要的大得多 - 几周前我们解码了我们的观点,发现我们可以在一些较大的页面上将它减少大约40%。

您的视图状态应该与需要一样大。只要确保密切注意它,以确保它不会膨胀,而且回复完全没有必要的信息。

答案 4 :(得分:1)

我认为这主要取决于你必须达到的目标,以及你为“故意”目的使用它的程度。无论如何,有办法测量,解码和优化它:

http://jagbarcelo.blogspot.com/2009/03/viewstate-size-minimization.html

https://web.archive.org/web/1/http://articles.techrepublic%2ecom%2ecom/5100-10878_11-5229520.html

http://scottonwriting.net/sowblog/posts/4409.aspx

答案 5 :(得分:1)

这取决于很多因素。一个包含大量控件和页面的页面内容将有更多的viewstate。什么是可接受的,取决于您的带宽限制。如果它是一个内部公司应用程序并且没有很多用户,则可以接受更大的视图状态(200-500k)。如果它在网络上或许多用户将在其上,您应该限制视图状态。

要限制viewstate,请查看改进UI的方法,使其不那么复杂。 诸如Telerik RadWindow之类的模态弹出窗口是将一些控件移出到另一个页面的好方法,同时保留了页面之间的交互。

在复杂的页面上,Tabs也是改善UI的好方法。每个Tab都可以是它自己的页面。