asp.net – 将ViewState移出页面?

前端之家收集整理的这篇文章主要介绍了asp.net – 将ViewState移出页面?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们尽可能地减轻我们的页面加载.由于ViewState有时可能会升高到100k页,我很乐意完全消除它.

我很乐意听到别人用来将ViewState移动到自定义提供者的技术.

也就是说,有几点要注意:

>我们每小时平均拥有200万名游客.
因此,数据库读取一直是性能上的一个严重问题,所以我不想将ViewState存储在数据库中.
>我们也是一个负载平衡器,所以任何解决方案必须与用户从机器到每个回发的机器一起工作.

想法?

解决方法

你如何处理会话状态?有一个内置的“在会话状态下存储viewstate”提供程序.如果您将会话状态存储在某些快速的proc系统中,那么这可能是viewstate的最佳选择.

编辑:为此,将以下代码添加到您的Page类/全局页面基类中

protected override PageStatePersister PageStatePersister {
        get { return new SessionPageStatePersister(this); }
    }

此外,这绝对不是一个完美的(甚至是好的)解决方案给一个大的观看状态.和往常一样,尽量减小viewstate的大小.但是,SessionPageStatePersister相对比较聪明,避免每个会话存储无界数的viewstates,并避免每个会话只存储一个viewstate.

猜你在找的asp.Net相关文章