ASP.NET“视图状态MAC验证失败”,错误有时在按钮点击

hmtdttj4  于 2023-10-21  发布在  .NET
关注(0)|答案(1)|浏览(178)

这是GoDaddy上的个人网站aspx/cs位于根目录的子文件夹(“httpdocs/test”)中。看起来,如果立即单击按钮,则没有错误。如果在单击按钮之前有60/120秒的等待时间,则每次都会引发异常。
从我在StackOverflow和其他网站上看到的许多评论来看,webfarm或集群可能会对PostBack应该返回到哪里感到困惑。
我从来没有得到任何异常抛出,当点击按钮时,在这里测试我的“本地主机”。
提前感谢您的任何建议。
default.aspx

<%@ page inherits='visits' codefile='visits.cs'  %>
<!doctype html>
<html>
    <body>
        <form runat='server'>
            <asp:button runat='server' onClick='clickMe' />
        </form>
    </body>
</html>

visits.cs

using System;

partial class visits:System.Web.UI.Page
{
    protected void Page_Load(object o, EventArgs ea)
    {}

    public void clickMe(object o, EventArgs ea)
    {}
}

我希望能够在任何时候点击这个按钮,从现在到永远,没有一个'服务器'异常弹出 * 偶尔 *。
这显然是一个更精细的页面/应用程序的精简版本。这是我可以在StackOverflow上向我的朋友展示的实际页面的简单/简洁的派生。
我只是很困惑我假设我可以尝试在JavaScript按钮上单击try/catch。我不知道该怎么做。

x8goxv8g

x8goxv8g1#

在你的web.config文件中添加以下链接。

<pages enableEventValidation="false" viewStateEncryptionMode="Never" />

上述行应包含在部分中。

如果你不希望这个解决方案在项目级别上实现,那么你可以将这些属性添加到创建问题的页面的页面(HTML视图的最上面一行)指令中。
这意味着您必须在页面指令中添加enableEventValidation=“false”viewStateEncryptionMode=“Never”。
希望这对你有帮助!

相关问题