In ASP.NET 1.x müssen viele Freunde möglicherweise eine seitenübergreifende Übermittlungsverarbeitung durchführen, das heißt, sie können von Seite A an Seite B senden. Sogar unterschiedliche Steuerelemente haben unterschiedliche Zielverarbeitungsseiten. Insbesondere Entwickler, die von ASP/JSP/PHP umgestiegen sind, könnten dieses Bedürfnis haben. Aber leider war die Handhabung solcher seitenübergreifenden Anfragen in ASP.NET 1.x sehr hässlich und erforderte viele „Fähigkeiten“.
In ASP.NET 2.0 gab es bereits eine sehr sinnvolle Lösung für die seitenübergreifende Übermittlung. Das Folgende ist ein Beispiel.
SourcePage.aspx: Bitte achten Sie auf die PostBackUrl-Attributeinstellung von Button1
<%...@ 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">...
öffentliche Zeichenfolge YourName
...{
erhalten
...{
return this.TextBox1.Text;
}
}
</script>
<html xmlns=" http://www.w3.org/1999/xhtml " >
<head runat="server">
<title>Unbenannte Seite</title>
</head>
<Körper>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Text="Bitte geben Sie Ihren Namen ein" Breite="183px"></asp:Label>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Submit" PostBackUrl="~/TargetPage.aspx" /></div>
</form>
</body>
</html>
TargetPage.aspx: Bitte achten Sie auf die Eigenschaftseinstellung von 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.YourName;
}
</script>
<html xmlns=" http://www.w3.org/1999/xhtml " >
<head runat="server">
<title>Unbenannte Seite</title>
</head>
<Körper>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" ></asp:Label>
</div>
</form>
</body>
</html>
OK, mit so einfachen zwei Attributeinstellungen können Sie problemlos die seitenübergreifende Übermittlungsfunktion nutzen. Natürlich können Sie auch komplexere Einstellungen entsprechend Ihren eigenen Bedürfnissen vornehmen, beispielsweise wenn jedes Control auf einer anderen Seite eingereicht werden muss.