2012-04-12 7 views
3

Ich habe diesen Artikel auf MSDN im Gespräch über Cross-page posting gefunden.Seitenübergreifende Buchung. Ist es eine gute Übung PreviousPage in Asp.net zu verwenden?

Ich habe nie mit Page.PreviousPage gearbeitet. Aber ich denke es ist interessant.

Verwenden Sie es? Ist es eine gute Übung oder eine schlechte Idee?

Woran denken Sie?

Danke.

+1

Ich glaube nicht, dass es eine gute Lösung für StackOverflow ist, da es keine genaue Antwort gibt - es ist eine Frage der Meinung wirklich, aber möglicherweise geeignet für programmers.stackexchange.com. Mein 2c ist, dass es nicht das übliche Verhalten für Postbacks ist, so viele andere Entwickler können von dieser Funktionalität erwischt werden, und es wäre besser, wie der Artikel vorschlägt, das Wizard-Steuerelement zu verwenden, da es speziell für diesen Zweck entwickelt wurde Die Absicht ist klar. – dash

+0

@dash gut, ist keine schlechte Idee, einige darüber zu denken, und warum existieren. – Aristos

+1

@Aristos Ich stimme zu, aber diese Art von Frage gehört mehr zu programters.stackexchange.com - es ist keine schlechte Frage, aber es passt nicht gut für das QA-Format für StackOverflow - IMO natürlich, weshalb ich upvoted habe deine Antwort, weil es eine * gute * Antwort ist. – dash

Antwort

4

Die Quer-Seite Buchung ist ein Helfer zu post some data to a different page und immer noch den asp.net-Code hinter Funktionalität.

Warum gibt es das? weil asp.net eine Beschränkung of one and only form per page haben. Aber eigentlich zu einer HTML-Seite können Sie viele Formulare und viele verschiedene Post auf verschiedenen Seiten haben.

Also um ein Werkzeug zu diesem Fall zu geben, lassen Sie eine zweite Seite einstellen, um die Daten zu posten, und Sie dies auf der Schaltfläche einrichten (und nicht durch das zweite Formular), und von dort ist dieses Problem zu lösen Veröffentlichen Sie die Daten auf einer anderen Seite.

Zum Beispiel ... mit asp.net und mit einfachen HTML auf einer Seite können Sie das tun.

Um eine Situation wie diese zu lösen, und weil asp.net nicht zwei Formulare auf der gleichen Seite zulassen, gibt diese Option.

<body> 
<form id="form1" runat="server"> 
Username: <asp:TextBox runat="server" ID="Name" /> 
<asp:Button runat="server"/> 

email for news letter: <asp:TextBox runat="server" ID="email" /> 
<asp:Button runat="server" PostBackUrl="page_b.aspx" /> 

</form> 
</body> 

Im zweiten Fall haben Sie eine Form, aber stellen Sie die PostBackUrl auf eine andere Seite, und von dort asp.net noch die Daten über Code behandeln hinter direkten auf einer zweiten Seite (mit out Redirect) .

Ich hoffe, dieses Beispiel gibt Ihnen und eine Idee, wo Sie die vorherige Seite wirklich verwenden können. Auch ist die Umleitung, wie auch immer, es gibt Fälle, in denen Sie das Ergebnis auf einer anderen Seite haben müssen. Also sein Fall, wenn Sie es benutzen oder nicht.

Verwandte Themen