aspx页面给出了viewstate错误

时间:2011-02-15 15:19:47

标签: asp.net viewstate

我有一个带有一个网格视图的简单aspx页面。当部署在服务器上并通过该机器访问时,它可以正常工作。但是,当通过负载平衡器连接时,我们会收到此错误(单击任何按钮时)。然而,当按下F5时页面会刷新。

Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.

知道这里发生了什么???

2 个答案:

答案 0 :(得分:2)

您应该将web.config上的machineKey设置为对所有负载平衡服务器都相同。 机器密钥用于加密,验证,散列等所有ASP.NET内部的东西。当在一台机器上创建ViewState时,它使用该机器的机器密钥创建,另一台机器无法验证它,因为它的密钥不同。尽管它被称为机器密钥,但它可以根据应用进行设置。

机器键有多个生成器(编写一个不难)。这是Google首次点击: http://aspnetresources.com/tools/machineKey

答案 1 :(得分:0)

在页面指令

上添加了enableViewStateMAC = false