[ASP.NET] Server.Transfer
Server.Transfer 一樣是讓使用者重導至其他網頁,但是它有甚麼特性,以及那些該注意的地方。
對於 Server.Transfer 與 Response.Redirect 有哪些差異,以下列出網路上一些參考
http://www.dotblogs.com.tw/jimmyyu/archive/2009/11/10/11503.aspx
1、由於 Server.Transfer 方法是直接在 Web 伺服器上請求,不是要求瀏覽器重新發出一個新的 HTTP 請求,可以減輕伺服器的負荷。
2、若是重導的網頁需要隱藏可以使用這個方法,參考下方圖片。
當按下 button 重導到其他網頁,網址依然沒變
3、來源網頁與目標網頁必須位於相同 Web 應用程式中,也就是說 Server.Transfer 只適用在導向自己的 Web 站台( 欲重導致外部網站,只能使用 Response.Redirect() )。
首先我們撰寫程式碼導向其他網站
Server.Transfer("http://www.google.com.tw/");
點下去後,出現錯誤
4、Server.Transfer 可以讓目標網頁讀取來源網頁上的控制項與公用屬性的值,若是你不要保留資訊到目標網頁,請設定參數為 false
http://msdn.microsoft.com/zh-tw/library/ms178139%28VS.80%29.aspx
首先我們先看 Default.aspx 頁面配置與程式碼
在 Default2.aspx 頁面也撰寫程式碼
效果
===============================================================================================================================
注意事項
- 網頁有 ScriptManager 和 UpdatePanel ,使用 Server.Transfer 將會出現錯誤
UpdatePanel 與 Sys.WebForms.PageRequestManagerParserErrorException
ASP.NET 的Server.Transfer要小心用
http://www.dotblogs.com.tw/cloudio/archive/2008/08/30/5255.aspx
三小俠 小弟獻醜,歡迎指教