我有几个关于ASP.NET中跨页面发布的问题:
我正在通过这篇MSDN文章试验跨页面发布.我有这个代码:
CrossPagePosting1.aspx
<form id="form1" runat="server">
<h1>Page 1</h1>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br />
<asp:Button ID="Button1" runat="server" Text="Button" PostBackUrl="CrossPagePosting2.aspx"/>
</form>
Run Code Online (Sandbox Code Playgroud)
CrossPagePosting2.aspx
<form id="form1" runat="server">
<h1>Page 2</h1>
<asp:Label ID="Label1" runat="server" Text=""></asp:Label>
</form>
Run Code Online (Sandbox Code Playgroud)
CrossPagePosting2.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
TextBox TextBox1 = (TextBox)Page.PreviousPage.FindControl("TextBox1");
Label1.Text = TextBox1.Text;
}
Run Code Online (Sandbox Code Playgroud)
上面的代码产生了一个NullReferenceExceptionat Page.PreviousPage.为什么?
这是一个ASP.Net 4.0应用程序.
它使用FriendlyUrls,这是默认值.
注意:我不希望上一页是强类型的,例如使用PreviousPageType指令.根据引用的文章,这不应该是必要的.