我想用post的方式把一个页面表单的值,传到另一个页面。当我点击Default.aspx的Send提交按钮时,这个时候会action到Default2.aspx页面,在这个时候就报错了,报的错误是: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(不理解为什么是这样!)
解决办法:在要接受的页面Default2.aspx加上<%@ Page Language="C#" enableViewStateMac="false" %> 这个,就可以了!
Default.aspx页面的代码:
<form id="form1" method="post" action="Default2.aspx" runat="server">
<div>
你的名字<asp:TextBox ID="name" runat="server"></asp:TextBox>
<br />
<br />
<input type="submit" value="Send" />
<br />
<br />
学习request 和 response的用法<br />
<br />
<br />
</div>
</form>
Default2.aspx页面代码:
string
name
=
Request[
"
name
"
];
Response.Write(name + " <br> " );
Response.Write( " 你使用的是 " + Request.RequestType + " 方式传送数据 " );
Response.Write(name + " <br> " );
Response.Write( " 你使用的是 " + Request.RequestType + " 方式传送数据 " );