我最近将一个 .NET 2.0 应用程序升级到 .NET 4 并且一切正常。
当我设置 IIS 时,我在 IIS 6 的 ASP.NET 选项卡下选择了 .NET 2.0。
该应用程序运行良好,但我收到这些间歇性 ViewState 错误。
IIS 设置是否会导致 ViewState 问题?
可能是因为 .Net 4 中的视图状态使用了与之前不同的算法
ASP.NET 使用加密和散列算法来帮助保护表单身份验证 cookie 和视图状态等数据的安全。默认情况下,ASP.NET 4 现在使用 HMACSHA256 算法对 cookie 和视图状态进行哈希运算。早期版本的 ASP.NET 使用较旧的 HMACSHA1 算法。
您需要在 IIS 中注册 .Net Framework 4.0,然后在 .Net 4.0 的应用程序池下运行您的站点
您需要注册 4.0 框架,此链接将为您提供帮助:http: //msdn.microsoft.com/en-us/library/k6h9cz8h.aspx