Asp.net 5種頁(yè)面轉(zhuǎn)向方法
1.<a href=”test.aspx”></a>
2.這是最常見(jiàn)的一種轉(zhuǎn)向方法;
HyperLink控件
1.Asp.net 服務(wù)器端控件 屬性NavigateUrl指定要跳轉(zhuǎn)到的Url地址
2.NavigateUrl是可以在服務(wù)器端使用代碼修改,這個(gè)區(qū)別于<a>
3.由于HyperLink本身沒(méi)有事件所以要在服務(wù)器端其它事件中設(shè)置NavigateUrl
4.代碼示例
<Asp:HyperLink id=”hyperlink” runat=”server” NavigatoeUrl=”test.aspx”>ok</Asp:HyperLink>
Response.Redirect()方法
1.過(guò)程:發(fā)送一個(gè)Http響應(yīng)到客戶端,通知客戶端跳轉(zhuǎn)到一個(gè)新的頁(yè)面,然后客戶端再發(fā)送跳轉(zhuǎn)請(qǐng)求到服務(wù)器端。
2.頁(yè)面跳轉(zhuǎn)之后內(nèi)部控件保存的所有信息丟失,當(dāng)A跳轉(zhuǎn)到B,B頁(yè)面將不能訪問(wèn)A頁(yè)面提交的數(shù)據(jù)信息。
3.使用這個(gè)方法使用這個(gè)方法跳轉(zhuǎn)后瀏覽器地址欄的Url信息改變
4.可以使用Session Cookies Application等對(duì)象進(jìn)行頁(yè)面間的數(shù)據(jù)傳遞
5.重定向操作發(fā)生在客戶端,總共涉及到兩次與Web服務(wù)器的通信:一次是對(duì)原始頁(yè)面的請(qǐng)求,另一次是重定向新頁(yè)面的請(qǐng)求
Server.Transfer()方法
1.實(shí)現(xiàn)頁(yè)面跳轉(zhuǎn)的同時(shí)將頁(yè)面的控制權(quán)進(jìn)行移交
2.頁(yè)面跳轉(zhuǎn)過(guò)程中Request Session等保存的信息不變,跳轉(zhuǎn)之后可以使用上一個(gè)頁(yè)面提交的數(shù)據(jù)
3.跳轉(zhuǎn)之后瀏覽器地址欄的Url不變
4.這種方法的重定向請(qǐng)求是在服務(wù)器端的進(jìn)行的,瀏覽器不知道頁(yè)面已經(jīng)發(fā)生了一次跳轉(zhuǎn)
Server.Execute()方法
1.該方法允許當(dāng)前頁(yè)面執(zhí)行同一個(gè)Web服務(wù)器上的另一個(gè)頁(yè)面
2.頁(yè)面執(zhí)行完畢之后重新回到原始頁(yè)面發(fā)出Server.Execute()的位置。
3.這種方式類似針對(duì)頁(yè)面的一次函數(shù)調(diào)用 被請(qǐng)求的頁(yè)面可以使用原始頁(yè)面的表單數(shù)據(jù)和查詢字符串集合
4.被調(diào)用頁(yè)面的Page指令的EnableViewStateMac屬性設(shè)置為False
話題相關(guān):
1. 為了確保HTML輸出的合法性 最好使用Response.Redirect方法;因?yàn)镾erver.Execute 或者Server.Transfer方法返回給客戶端的頁(yè)面包含多個(gè)<Html><body>標(biāo)記,不是合法的HTML頁(yè)面,在非IE瀏覽器中可能會(huì)發(fā)生錯(cuò)誤。
2. 由于Server.Transfer在服務(wù)器端執(zhí)行重定向,所以避免了不必要的網(wǎng)絡(luò)通信,從而獲得了更好的性能和瀏覽效果
相關(guān)文章
ASP.NET?Core?MVC中使用Tag?Helper組件
這篇文章介紹了ASP.NET?Core?MVC中使用Tag?Helper組件的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-02-02
C#中的FileUpload 選擇后的預(yù)覽效果具體實(shí)現(xiàn)
選擇后的預(yù)覽效果實(shí)現(xiàn)的方法有很多,在本文為大家介紹下使用C#中的FileUpload是如何實(shí)現(xiàn)的,感興趣的朋友不要錯(cuò)過(guò)2013-12-12
水晶報(bào)表asp.net的webform下基本用法實(shí)例
這篇文章主要介紹了水晶報(bào)表asp.net的webform下基本用法,實(shí)例講述了asp.net中水晶報(bào)表的創(chuàng)建與使用方法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2014-11-11
基于.NET Core 3.1 網(wǎng)站開(kāi)發(fā)和部署的方法
這篇文章主要介紹了基于.NET Core 3.1 網(wǎng)站開(kāi)發(fā)和部署的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
win7系統(tǒng)下 vs2010 調(diào)式就關(guān)閉要重啟處理方法
最近經(jīng)常出現(xiàn)只要一使用vs2010進(jìn)行調(diào)試,就提示關(guān)閉并要重啟,好煩,度娘了半天,總結(jié)下來(lái)解決方法,親測(cè)可用哦。2014-08-08
Asp.Net Core WebAPI使用Swagger時(shí)API隱藏和分組詳解
這篇文章主要給大家介紹了關(guān)于Asp.Net Core WebAPI使用Swagger時(shí)API隱藏和分組的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Asp.Net Core具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04
Asp.NET MVC中使用SignalR實(shí)現(xiàn)推送功能
這篇文章主要為大家詳細(xì)介紹了Asp.NET MVC 中使用 SignalR 實(shí)現(xiàn)推送功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10
OpenCV 3.1.0+VS2015開(kāi)發(fā)環(huán)境配置教程
這篇文章主要為大家詳細(xì)介紹了OpenCV 3.1.0+VS2015開(kāi)發(fā)環(huán)境配置教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-11-11

