ASP.NET(c#)實現重定向的三種方法的總結


(1)Server.Transfer方法:

Server.Transfer("m2.aspx");//頁面轉向(服務器上執行). 
服務器停止解析本頁,保存此頁轉向前的數據后,再使頁面轉向到m2.aspx, 
並將轉向前數據加上m2.aspx頁結果返回給瀏覽器. 

(2)Server.Execute方法:

Server.Execute("m2.aspx"); 
服務器保存此頁轉向前的數據后,使頁面轉向到m2.aspx執行, 
再返回本頁繼續執行.再將三者結果合並后返回給瀏覽器.

以上都是服務器端頁面轉向所以瀏覽器不出現頁更改記錄(顯示的地址不會改變). 
因此,如果用戶刷新此頁,也許會出現一些其它意外情況. 
此類頁轉向,可完成一些其它功能,比如訪問到前一頁面中的服務端控件.

(3)Response.Redirect:

當瀏覽器請求aspx頁面時,碰到Redirect(url)方法, 
相當於告訴瀏覽器,你先需訪問某頁面,於是瀏覽器再向服務器發送一個到此頁面的請求. 
重定位是通過瀏覽器執行的,在服務器和瀏覽器之間會產生額外的往返過程。

在網絡狀況不是很好的情況下,兩次請求會大大的 
降低應用程序的反應速度,甚至占用多余的帶寬. 

總結:

在網絡狀態較好的情況下,Redirect(url)方法效率最高!! 
Server.Transfer方法和Server.Execute方法最靈活!! 
Server.Execute方法占用資源最多.

 

轉載自:http://blog.163.com/ecaol@126/blog/static/46846363200751494339385/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM