【问题标题】:Failed to load viewstate in asp.net无法在 asp.net 中加载视图状态
【发布时间】:2011-04-13 23:33:05
【问题描述】:

我在 asp.net 上遇到了这个问题:

加载视图状态失败。正在加载视图状态的控制树必须与在先前请求期间用于保存视图状态的控制树匹配。例如,动态添加控件时,在回发期间添加的控件必须与在初始请求期间添加的控件的类型和位置相匹配。

有什么建议吗?

【问题讨论】:

  • 您是否在任何客户端向选择元素添加任何动态控件/添加选项?
  • 是什么原因导致这个错误,你换源后刷新页面了吗?
  • 你在使用像 ListView 这样的模板控件吗?

标签: asp.net


【解决方案1】:

您需要在 web.config 中指定机器密钥。这通常发生在应用程序被回收并且 ASP.Net 生成新密钥以加密/解密会话状态时。如果您正在运行一个网络花园/农场,您还需要在每台服务器上拥有相同的密钥。例如在 web.config 文件的 system.web 部分中

 <machineKey validationKey="6D1873D8ABE57E15252C4C6A9164F0A1C3E68FBAD8C2F09AEFF178A1269E11FCA4ACAAA628EFAA33FF4C922D638213C63CA6AF76EAEB779D37481CE4ADBC1E7A" decryptionKey="8EA3075B2BB30B0A121BFD283CC78012B83C8D741B846495" validation="SHA1"/>

对此进行谷歌搜索,有些网站可以为您随机生成更多密钥。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多