Server.Transfer(ASP 3.0 以上) 和 Response.Redirect 在以前的 ASP 中就存在了,Page.Navigate 是 ASP.NET Beta 1 提供的新功能,它們之間的區(qū)別在于:
1、Server.Transfer - 用于把處理的控制權(quán)從一個頁面轉(zhuǎn)移到另一個頁面,在轉(zhuǎn)移的過程中,沒有離開服務(wù)器,內(nèi)部控件(如:request, session 等)的保存的信息不變,因此,你能從頁面 A 跳到頁面 B 而不會丟失頁面 A 中收集的用戶提交信息。此外,在轉(zhuǎn)移的過程中,瀏覽器的 URL 欄不變。
2、Response.Redirect - 發(fā)送一個 HTTP 響應(yīng)到客戶端,告訴客戶端跳轉(zhuǎn)到一個新的頁面,客戶端再發(fā)送跳轉(zhuǎn)請求到服務(wù)器。使用此方法時,將無法保存所有的內(nèi)部控件數(shù)據(jù),頁面 A 跳轉(zhuǎn)到頁面 B,頁面 B 將無法訪問頁面 A 中 Form 提交的數(shù)據(jù)。