【问题标题】:Does ViewState require Server resources? I thought notViewState 是否需要服务器资源?我以为不是
【发布时间】:2010-12-15 20:47:06
【问题描述】:

我在某处读到这个:

"因为给定页面的视图状态 必须保存在服务器上,当前有可能 状态与当前页面不同步 浏览器,如果用户在 浏览器返回历史"

我怀疑这可能不是默认设置,而是将视图状态存储在服务器上的选项,因为将视图状态存储在页面和服务器中的意义何在?我说的对吗?

如果 ViewState 存储在服务器上,如何避免这里描述的 BackButton 问题?

【问题讨论】:

    标签: asp.net viewstate


    【解决方案1】:

    ASP.NET ViewState 存储在客户端中一个(或多个)隐藏的 HTML 输入字段中。我真的很想看看你在哪里读到了那个不正确的陈述。

    一旦发送,服务器就完全忘记了 ViewState。作为一种防止篡改的安全措施,ASP.NET 可以对其进行加密并根据其密钥对其进行验证。如果您使用设置键(而不是自动生成的键),即使服务器已完全关闭并重新启动,该视图状态也将有效。所有这一切都说明视图状态中的任何内容都不会存储在服务器上。

    【讨论】:

    • 我认为这里的线索可能是在引用中使用“视图状态”而不是“视图状态”,并且可能适用于不涉及使用 ASP 的不同维护状态的方法.NET ViewState 机制。
    • @Lazarus - 好点;我没有注意到那个特别的花絮,但这正是我期望解释这种说法的那种可能性。
    • @Andrew Barber : 正是像我这样的学究会注意到的花絮;)
    • 我在一篇文章中读到了它。 allinterview.com/showanswers/4745.html,但我记得在不止一个地方看到过这一点。另外,我隐约记得自己在 ViewState 损坏或与服务器不同步时遇到了错误......
    • @Chad - 它可能会损坏,是的。但不是“不同步”,因为它没有与任何东西同步。我会看看那个链接。
    猜你喜欢
    • 2016-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-16
    • 2018-08-16
    • 2014-04-09
    • 1970-01-01
    • 2018-05-29
    相关资源
    最近更新 更多