我在MSDN上發現這篇文章時談到了Cross-page posting。跨頁面發佈。在Asp.net中使用PreviousPage是一個很好的實踐嗎?
我從來沒有使用過Page.PreviousPage。但我認爲它很有趣。
你用它嗎?這是一個好的實踐,還是一個壞主意?
您怎麼看?
謝謝。
我在MSDN上發現這篇文章時談到了Cross-page posting。跨頁面發佈。在Asp.net中使用PreviousPage是一個很好的實踐嗎?
我從來沒有使用過Page.PreviousPage。但我認爲它很有趣。
你用它嗎?這是一個好的實踐,還是一個壞主意?
您怎麼看?
謝謝。
跨頁面發佈是post some data to a different page
的幫手,仍然具有功能背後的asp.net代碼。
這是爲什麼存在?因爲asp.net有限制of one and only form per page
。但實際上到一個HTML頁面,你可以有很多形式和許多不同的帖子到不同的頁面。
因此,爲了給這種情況下的一個工具,讓你設置第二頁來發布數據,並且你在按鈕(而不是通過放置第二種形式)上設置它,並從那裏解決這個問題,以將數據發佈到不同的頁面。
例如...用asp.net和一個簡單的html頁面,你可以做到這一點。
<body>
<form method="post" action="samepage.html">
Username: <input type="text" name="user" />
<input type="submit" value="Submit" />
</form>
<form method="post" action="page_b.html">
email for news letter: <input type="text" name="email" />
<input type="submit" value="Submit" />
</form>
</body>
要解決這樣的情況,並且因爲asp.net不允許兩個表單在同一個頁面上,所以給出了這個選項。
<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>
在第二種情況下,你有一種形式,但您設置的一項PostBackUrl到不同的頁面,並從那裏asp.net還是處理背後直接的代碼數據的第二頁上(用了重定向) 。
我希望這個例子給你和一個想法在哪裏真正使用上一頁。此外,更重要的是Redirect,如果您需要將結果分配到不同的頁面,那麼情況會如何。因此,如果你使用它或不使用它的話。
我不認爲這很適合StackOverflow,因爲沒有確切的答案 - 這確實是一個意見問題,但可能適合程序員.stackexchange.com。我的2c版本並不是通常的回傳行爲,很多其他開發者可能會被這個功能所吸引,如文章所言,使用Wizard控件會更好,因爲它專門爲此目的而設計,所以意圖很明確。 – dash 2012-04-12 13:14:16
@簡直就是好主意,寫一些想法,爲什麼會存在。 – Aristos 2012-04-12 13:45:42
@Aristos我同意,但這種問題更多地屬於程序員.stackexchange.com - 這不是一個壞問題,但它不太適合StackOverflow的QA格式 - 當然是IMO,這就是爲什麼我已經upvoted你的答案,因爲這是一個很好的答案。 – dash 2012-04-12 15:16:43