在ASP.NET 2.0中,对于跨页提交已经有了非常合理的解决方案
下面是一个示例:
BeginPage.aspx: 请注意Button1的PostBackUrl属性设置
以下是引用片段: <%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> public string Name { get { return this.TextBox1.Text; } } </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>Untitled Page</title> </head> <body> <form id="form1" runat="server"> <div> <asp:Label ID="Label1" runat="server" Text="请输入姓名" Width="183px"></asp:Label> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <asp:Button ID="Button1" runat="server" Text="提交" PostBackUrl="~/EndPage.aspx" /></div> </form> </body> </html> |
EndPage.aspx:请注意PreviousPageType的属性设置
以下是引用片段: <%@ Page Language="C#" %> <%@ PreviousPageType VirtualPath="~/SourcePage.aspx" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> protected void Page_Load(object sender, EventArgs e) { this.Label1.Text = PreviousPage.Name; } </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>Untitled Page</title> </head> <body> <form id="form1" runat="server"> <div> <asp:Label ID="Label1" runat="server" ></asp:Label> </div> </form> </body> </html> |
OK,就通过这么简单的两个属性设置,就可以非常方便的得到跨页提交的特性