代码之家  ›  专栏  ›  技术社区  ›  wows

使用ASP.NET控件对性能的影响

  •  2
  • wows  · 技术社区  · 17 年前

    对于页面上的用户控件,我知道每个控件都会通过在ViewState中存储自己的状态来影响内存使用。我的问题是,多少钱?

    例如,我在主页上有一个反馈表作为控件。默认设置为Visible=“false”。用户单击反馈按钮,控件在需要时可见。

    如果控件位于每个页面上(因为它位于母版页中),但不可见,那么相对性能会有什么影响?我正在开发的网站可能会有大量的流量,我想知道如果事情进展缓慢,我是否会让自己头疼。

    谢谢

    2 回复  |  直到 17 年前
        1
  •  2
  •   Brian Lyttle    17 年前

    我认为您应该有一些逻辑来确保反馈表单控件只添加到反馈页面。不要使用visible=“false”,而是将它放在它自己的页面上并链接到它,或者动态地将控件添加到页面中。

    对于所有性能问题,您应该测试性能并根据硬数据做出判断。在本例中,计算出客户端上viewstate的大小,然后乘以请求数以查看服务器上带宽使用的大小。在客户机上,使用FireBug之类的工具来了解客户机接收到的总体页面大小。

        2
  •  0
  •   Alex Reitbort    17 年前

    这取决于控制。具有数百行的Datagrid可能会生成100k的viewstate。另一方面,复选框不会生成太多的内容。

    我不会一开始就想到这样的优化。如果以后速度变慢,您可以始终将表单更改为纯html,并使用ajax或其他方法将其数据发布到服务器。只要它是用户控制,而不是复制粘贴的内容,它将很容易优化

    推荐文章