gpt4 book ai didi

c# - 在表单标记中设置操作会生成错误 "Validation of viewstate MAC failed..."

转载 作者:太空宇宙 更新时间:2023-11-03 18:37:48 25 4
gpt4 key购买 nike

我在 form 标记中设置 action 并收到以下错误:

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

我试过以下方法:

  1. 在 web.config 中设置机器配置 key 。
  2. 在页面中设置EnableViewStateMac="false"
  3. 设置 ViewStateEncryptionMode="Never"
  4. 设置 EnableEventValidation="false"

但没有运气。

请提供任何指导。

感谢您的帮助和分享。

编辑:

这是我页面的标记。

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default"
EnableViewStateMac="false" ViewStateEncryptionMode="Never" EnableEventValidation="false" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="aspnetForm" method="post" action="Test.aspx" runat="server">
<div>
<asp:TextBox runat="server" ID="txt1"></asp:TextBox><br />
<asp:TextBox runat="server" ID="txt2"></asp:TextBox><br />
<asp:Button runat="server" ID="btn" Text="Click" />
</div>
</form>
</body>
</html>

最佳答案

如果你改变表单标签和按钮的标记,你可以完成跨页发布。

步骤:

  • 从表单中删除“action”
  • 将“PostbackUrl”添加到按钮

============================================= ==========

MSDN:ASP.NET 中的跨页发布

概览:http://msdn.microsoft.com/en-us/library/ms178139(v=vs.100).aspx

操作方法:http://msdn.microsoft.com/en-us/library/ms178140(v=vs.100).aspx

============================================= ==========

<form id="aspnetForm" method="post" runat="server">
<div>
<asp:TextBox runat="server" ID="txt1"></asp:TextBox><br />
<asp:TextBox runat="server" ID="txt2"></asp:TextBox><br />
<asp:Button runat="server" ID="btn" Text="Click" PostBackUrl="~/Test.aspx" />
</div>
</form>

关于c# - 在表单标记中设置操作会生成错误 "Validation of viewstate MAC failed...",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12811431/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com