防伪令牌错误

时间:2012-01-18 20:55:16

标签: asp.net-mvc-2 antiforgerytoken

我有一个为.NET 3.5构建的mvc2项目。我有一个我在4.0中编写的库,我需要3.5项目,所以我改变了目标框架,现在它抛出的防伪标记的任何地方:

  

viewstate MAC验证失败。如果此应用程序由a托管   Web场或群集,确保配置指定   相同的validationKey和验证算法。 AutoGenerate不能   在集群中使用。

我发现了这个question,但没有任何建议。我在配置中创建了一个静态机器密钥,但它没有帮助。任何人都知道可能是什么问题。我不明白为什么它之前工作正常。

1 个答案:

答案 0 :(得分:4)

您必须关闭所有浏览器窗口才能继续。

AntiForgeryToken cookie是会话cookie,使用机器密钥加密/解密。如果机器密钥更改(或设置为自动生成),则呈现AntiForgeryToken将失败。

重新启动浏览器窗口将清除cookie,MVC将在下次创建一个新的有效cookie。