一直以來,各種跳轉方法混用,渾渾噩噩沒有仔細去了解過每個跳轉方法的區別
1.<a herf="default.asp"></a> 超鏈接跳轉
2.<asp:HyperLink ID="HyperLink1" runat="server">HyperLink</asp:HyperLink>
3..Response.Redirect(url)
其跳轉機制為首先是服務器端發送一個http請求到客戶端,通知需要跳轉到的新頁面,然后客戶端再發送跳轉請求到服務器端。需要注意的是跳轉后內部空間保存的所有數據信息將會丟失,可以跨站各種跳轉但是不能跳過登錄保護。瀏覽器中url改變
如果要把用戶連接到另一台服務器上的資源,使用Response.Redirect。
用Response.Redirect把用戶連接到非ASPX的資源,例如HTML頁面
如果要確保HTML輸出合法,請使用Response.Redirect,不要使用Server.Transfer或Server.Execute方法。
4.Server.Transfer(url)
這個方法的重定向請求是發生在服務器端,所以瀏覽器的url地址仍然保留的是原頁面的地址!
如果要將執行流程轉入同一Web服務器的另一個ASPX頁面,應當使用Server.Transfer
5.Server.Execute(url)
這個方法主要是用在頁面設計上面,而且他必須是跳轉同一站點下的頁面。這個方法是需要將一個頁面的輸出結果插入到另一個aspx頁面的時候使用,大部分是在表格中,將某一個頁面類似於嵌套的方式存在於另一頁面。
如果要捕獲一個ASPX頁面的輸出結果,然后將結果插入另一個ASPX頁面的特定位置,則使用Server.Execute。
http://blog.csdn.net/ty_soft/article/details/7292348?locationNum=5&fps=1
