ASP .NET标签是否增加了本地化时传递的ViewState的权重?
题
我目前正在为ASP .NET应用程序开发本地化项目。我目前有一个包含多个视图的大页面,大约有9个选项卡,每个选项卡包含大量数据。我只是想知道,我在ASPX页面上添加了很多标记,以便我可以轻松地本地化我的文本。我想知道Label的数量是否对视图状态大小有很大影响?或者页面的表现。
我在另一篇文章(这里)上阅读了一篇asp:标签至少包含52bytes的数据。因此,如果我有很多标签控件,那么将来回发送其他未使用的数据。我想知道为什么它甚至需要52个字节的视图状态,如果它只是一个标签。此外,除了Microsoft的内置功能之外,还有其他方法可以在ASP .NET中进行本地化。
解决方案
如果在回发之间没有更改,<asp:Label>
Text
属性将不会保留在ViewState
中。您为SaveViewState()
控件生成的EnableViewState
是在控件上调用false
时由标签的ControlState生成的数据。
让我澄清一下 - <=>跟踪对页面的更改。如果<=>的文本在aspx标记(或代码隐藏)中设置并且永远不会更改,则ViewState的大小不会更改(Label控件的<=>不包含任何与之相关的数据<=>属性)。在这种情况下,我倾向于将<=>设置为<=>,以便根本不会将任何数据放入ViewState中。
我建议阅读 TRULY UnderTheTallnding ViewState 了解更多详情。
不隶属于 StackOverflow