Asp.net中Server.Transfer,Server.Execute和Response.Redirect的區別

來源:互聯網
上載者:User

Asp.net中Server.Transfer,Server.Execute和Response.Redirect的區別 

在Asp.net 中常常需要進入頁面跳轉,一般用到的方法有Server.Transfer,Server.Execute和Response.Redirect,下面講解一下三種方法各自不同的用法。

(1)Server.Transfer方法:

Server.Transfer("m2.aspx");//頁面轉向(伺服器上執行).

伺服器停止解析本頁,儲存此頁轉向前的資料後,再使頁面轉向到m2.aspx,

並將轉向前資料加上m2.aspx頁結果返回給瀏覽器,注意的是瀏覽器的地址沒發生變化

還是m1.aspx,

 

(2)Server.Execute方法:

Server.Execute("m2.aspx");

伺服器儲存此頁轉向前的資料後,使頁面轉向到m2.aspx執行,

再返回本頁繼續執行.再將三者結果合并後返回給瀏覽器.

以上都是伺服器端頁面轉向所以瀏覽器不出現頁更改記錄(顯示的地址不會改變).

因此,如果使用者重新整理此頁,也許會出現一些其它意外情況.

此類頁轉向,可完成一些其它功能,比如訪問到前一頁面中的服務端控制項.

 

(3)Response.Redirect:

當瀏覽器請求aspx頁面時,碰到Redirect(url)方法,

相當於告訴瀏覽器,你先需訪問某頁面,於是瀏覽器再向伺服器發送一個到此頁面的請求.

重定位是通過瀏覽器執行的,在伺服器和瀏覽器之間會產生額外的往返過程。

在網路狀況不是很好的情況下,兩次請求會大大的

降低應用程式的反應速度,甚至佔用多餘的頻寬. 轉換完後瀏覽器地址將改變,顯示為asp2.aspx

 

總結:

在網路狀態較好的情況下,Redirect(url)方法效率最高!!

Server.Transfer方法和Server.Execute方法最靈活!!

Server.Execute方法佔用資源最多.

Server.Transfer和Server.Execute的區別是,Execute執行的結果不會返回給目前使用者。

·如果要讓使用者來決定何時轉換頁面以及轉到哪一個頁面,超級連結最適合。 
   
  ·如果要用程式來控制轉換的目標,但轉換的時機由使用者決定,使用Web衿韉腍yperLink控制項,動態設定其NavigateUrl屬性。 
   
  ·如果要把使用者串連到另一台伺服器上的資源,使用Response.Redirect。 
   
  ·用Response.Redirect把使用者串連到非ASPX的資源,例如HTML頁面。 
   
  ·如果要將查詢字串作為URL的一部分保留,使用Response.Redirect。 
   
  ·如果要將執行流程轉入同一Web伺服器的另一個ASPX頁面,應當使用Server.Transfer而不是Response.Redirect,因為Server.Transfer能夠避免不必要的網路通訊,從而獲得更好的效能和瀏覽效果。 
   
  ·如果要捕獲一個ASPX頁面的輸出結果,然後將結果插入另一個ASPX頁面的特定位置,則使用Server.Execute。 
   
  ·如果要確保HTML輸出合法,請使用Response.Redirect,不要使用Server.Transfer或Server.Execute方法。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.