国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

細說ASP.NET頁面間數據傳遞的幾種方法

開發 后端
在這里我們將介紹的是ASP.NET頁面間數據傳遞的幾種方法,希望對大家有所幫助。

本文我們將討論的是ASP.NET頁面間數據傳遞的幾種方法,對此希望能幫助大家正確的理解ASP.NET頁面間數據傳遞的用處以及便利性。

0、引言

Web頁面是無狀態的, 服務器對每一次請求都認為來自不同用戶,因此,變量的狀態在連續對同一頁面的多次請求之間或在頁面跳轉時不會被保留。在用ASP.NET 設計開發一個Web系統時, 遇到一個重要的問題是如何保證數據在頁面間進行正確、安全和高效地傳送,Asp.net 提供了狀態管理等多種技術來解決保存和傳遞數據問題,以下來探討.NET 下的解決此問題的各種方法和各自的適用場合。

#T#

1、ASP.NET頁面間數據傳遞的各種方法和分析

1.1 使用Querystring 方法

QueryString 也叫查詢字符串, 這種方法將要傳遞的數據附加在網頁地址(URL)后面進行傳遞。如頁面A.aspx 跳轉到頁面B.aspx,可以用Request.Redirect("B.aspx?參數名稱=參數值")方法,也可以用超鏈接:,頁面跳轉后,在目標頁面中可用Ruquest["參數名稱"]來接收參數。使用QuerySting 方法的優點是實現簡單, 不使用服務器資源;缺點是傳遞的值會顯示在瀏覽器的地址欄上,有被篡改的風險,不能傳遞對象,只有在通過URL 請求頁時查詢字符串才是可行的。

1.2 利用隱藏域

隱藏域不會顯示在用戶的瀏覽器中, 一般是在頁面中加入一個隱藏控件, 與服務器進行交互時把值賦給隱藏控件并提交給下一頁面。隱藏域可以是任何存儲在網頁中的與網頁有關的信息的存儲庫。使用隱藏域存入數值時用:hidden 控件.value=數值,取出接收數值時用:變量=hidden 控件.value。使用隱藏域的優點是實現簡單, 隱藏域是標準的HTML 控件,不需要復雜的編程邏輯。隱藏域在頁上存儲和讀取,不需要任何服務器資源,幾乎所有瀏覽器和客戶端設備都支持具有隱藏域的窗體。缺點是存儲結構少,僅僅支持簡單的數據結構,存儲量少,因為它被存儲在頁面本身,所以無法存儲較大的值,而且大的數據量會受到防火墻和代理的阻止。

1.3 ViewState

ViewState 是由ASP.NET 頁面框架管理的一個隱藏的窗體字段。當ASP.NET 執行某個頁面時,該頁面上的ViewState 值和所有控件將被收集并格式化成一個編碼字符串, 然后被分配給隱藏窗體字段的值屬性。使用ViewState 傳遞數據時可用:ViewState [" 變量名"]=數值,在取出數據時用:變量=ViewState["變量名"]。使用ViewState 的優點是:在對同一頁的多個請求間自動保留值,不用服務器端資源,實現簡單,視圖狀態中的值經過哈希計算和壓縮,并且針對Unicode 實現進行編碼,其安全性要高于使用隱藏域;缺點是因為ViewState 存儲在頁面本身,因此如果
存儲較大的值,用戶顯示頁和發送頁時的速度可能會減慢。雖然視圖狀態以哈希格式存儲數據,但它仍可以被篡改。

1.4 使用Cookie

Cookie 可以在頁面之間傳遞少量信息, 可以存儲在客戶端的文本文件中,也可存儲在客戶端的內存中。Cookie 方法適用于存儲少量頁面中經常改動的信息, 如為登陸過的網站保存登陸用戶名,為用戶輸入提供方便,還有在一些用戶自定義項目上保存用戶的個性化設置。使用Cookie傳遞數據時可用:Response.Cookies["鍵名"]=鍵值;取出數據用:變量名=Request.Cookies["鍵名"]。使用Cookie 優點是:Cookie 存儲在客戶端, 不使用服務器資源,實現簡單,可配置到期時間。缺點是:可以存儲的數據量比較少,由于Cookie 并不被所有的瀏覽器支持,而且還可能被用戶禁止或刪除,所以不能用于保存關鍵數據。另外,Cookie 保存的形式是簡單的明文文本,在它里面不宜保存敏感的、未加密的
數據。

1.5 使用Application 變量

使用Application 變量也可以實現頁面間的傳值,Application變量是全局性的,所有用戶共享一個Application 變量,一旦定義,它將影響到程序的所有部分。如果想在整個應用程序范圍使用某個變量值Application 對象將是***的選擇。存入數據時, 把值添加到Application 變量里:Application["變量名"]=數值;取出數據用:變量=Application["變量名"];在不需要使用該Application 時,要顯式清除它:Application["量名"]=null。
 Application 優點:易于使用,全局范圍。可供應用程序中的所有頁來訪問。缺點:若保存數據的服務器端進程被損壞(如因服務器崩潰、升級或關閉而損壞),那么數據就會丟失,所以利用Application 一定要有保底的策略;占用服務器端的內存,這可能會影響服務器的性能以及應用程序的可伸縮性。

1.6 使用Session 變量 

Session 對象可以用來存儲需要維護的指定對話的信息,不同的客戶端生成不同的Session 對象。Session 用于存儲特定于單獨會話的短期信息。Session 的使用方法和格式與Application 相同。 

優點:易于實現,并且提供較高的安全性和持久性,可以應對IIS 重啟和輔助進程重啟,可在多進程中使用。缺點是耗用服務器端的內存。所以不要存儲大量的信息。Session 最常見的用途是與Cookie 一起向Web 應用程序提供用戶標識功能,Session也可用于不支持Cookie 的瀏覽器。但是,使用無Cookie 的Session 需要將會話標識符放置在查詢字符串中,同樣會遇到本文在查詢字符串一節中陳述的安全問題。

1.7 使用類的靜態屬性

這種方法是利用類的靜態屬性實現兩個頁面間的值傳。定義一個包含靜態屬性的類;將要傳送的值賦給靜態屬性;目標頁面中可以通過靜態屬性獲得源頁面中要傳的值。
優點是可以方便傳送多個數據,缺點是需要額外編程,增加程序設計的工作量,占用服務器內存。

1.8 使用Server.Transfer 

 通過Server.Transfer 方法把執行流程從當前的ASPX 文件轉到同一服務器上的另一個ASPX 頁面的同時,可保留表單數據或查詢字符串,做法是把該方法的第二個參數設置成True,在***個頁面用Server.Transfer("目標頁面名.aspx",true);目標頁面取出數據用:Ruquest.Form["控件名稱"]或Ruquest.QueryString["控件名稱"]。Asp.net2.0 中還可以這樣來用,代碼如下:

  1. PreviousPage pg1;2pg1=(PreviousPage)Context.Handler; 3Response.Write(pg1.Name); 

說明: 此段代碼用在目標頁面中取出傳遞的值,Previous- Page 是原頁面的類名,Name 是在原頁面定義的屬性, 需要傳遞 的數據存入到此屬性中。
使用這種方法, 需要寫一些代碼以創建一些屬性以便可以 在另一個頁面訪問它, 可以在另一個頁面以對象屬性的方式來 存取數值,這個方法在頁面間值傳遞中是特別有用的,這種方法 不但簡潔,同時又是面向對象的。

1.9 Cache 

Cache 具有強大的數據操作功能, 以鍵值對集合的形式存 儲數據,可以通過指定關鍵字來插入和檢索數據項。它的基于依 賴性的終止功能, 使它能夠精確控制如何并及時更新和消除緩 存中的數據。它可以內部進行鎖定管理,不需要象Application 對象那樣使用Lock()和Unlock()方法進行串行化管理。缺點是使用 方法較復雜,使用不當反而降低性能. 

2、不同頁面跳轉情況下可采用的傳值方法

2.1 情況一:源頁面可以跳轉到目標頁面,源頁面傳遞數據給目標頁面

使用查詢字符串, 將少量信息從一頁傳輸到另一頁以及不 存在安全性問題時,是一個簡單常用的方法;使用Server.Transfer方法,可傳遞表單數據或查詢字符串到另一個頁面,還可以 保存初始頁的HttpContext, 當目標頁和源頁面在同一個服務器 時,可以用此方法。

2.2 情況二:頁面傳遞數值給自身頁面 

 即在對同一頁的多個請求間保留值, ViewState 屬性可提供具有基本安全性的功能。也可用隱藏域,存儲少量回發到自身或另一頁的頁信息時使用,不考慮安全性問題時使用。

2.3 情況三:源頁面傳遞數值給目標頁面,而源頁面不能直接連接到目標頁面。

有多個方法,具體用哪個要看具體情況。

Application: 存儲由多個用戶使用且更改不頻繁的全局信息,此時安全性不成為問題。不要存儲大量的信息。Session:存儲特定于單獨會話的短期信息,并且需要較高的安全性。不要在會話狀態中存儲大量的信息。需要注意,將為應用程序中每一會話的生存期創建并維護會話狀態對象。在支持許多用戶的應用程序中, 這可能會占用大量服務器資源并影響可縮放性。

Cookie: 當您需要在客戶端存儲少量信息以及不存在安全性問題時使用。類的靜態屬性,方便傳送多個數據。

Cache :對象用于單個用戶、一組用戶或所有的用戶。可以為多個請求長時間、高效率的保存數據。上述幾個方法, 不僅用于情況三, 前面兩種情況都可以使用,只是沒有必要時盡量少用,否則會造成資源浪費或增加程序的復雜性。

原文標題:ASP.NET 頁面間數據傳遞方法

鏈接:http://www.cnblogs.com/gsanidt/archive/2009/12/15/1624553.html

責任編輯:彭凡 來源: 博客園
相關推薦

2011-07-13 09:31:48

ASP.NET數據傳遞

2009-09-04 11:20:47

ASP.NET頁面間值

2009-07-20 17:07:30

提高ASP.NET性能

2012-05-07 13:23:47

ASP.NET

2009-12-11 09:36:50

ASP.NET MVC

2009-08-25 14:59:36

ASP.NET和C#連

2012-05-07 14:50:32

ASP.NET

2009-07-23 14:08:58

2009-07-24 10:53:51

ASP.NET實現靜態

2009-07-23 14:17:41

2009-07-29 17:26:39

ASP.NET頁面

2009-07-31 10:23:44

緩存頁面ASP.NET緩存

2009-07-31 08:56:59

ASP.NET頁面刷新

2009-08-03 13:38:18

ASP.NET編程模型

2011-06-08 10:28:15

ASP.Net

2011-07-13 08:58:51

ASP.NET

2009-07-28 13:26:34

Render方法ASP.NET

2009-07-31 10:33:54

ASP.NET頁面輸出

2009-08-05 18:22:55

2009-07-27 15:25:40

aspx頁面ASP.NET
點贊
收藏

51CTO技術棧公眾號

牛夜精品久久久久久久99黑人| 成人午夜电影网站| 婷婷综合视频| 欧美色图天堂网| 中文字幕在线观看一区二区| 国产a一区二区| 激情综合婷婷| 欧美一级片免费看| 国产字幕中文| 亚洲欧美在线视频观看| 欧美另类videosbestsex日本| 激情av综合| 精品99久久久久久| 黄色小视频在线免费观看| 中文字幕欧美日韩一区| 国产精品igao激情视频| 国产欧美日本| 国产中文字幕91| 99精品国产九九国产精品| 亚洲成人精品av| 免费a在线观看| 亚洲男女毛片无遮挡| 国产91在线视频观看| 麻豆精品国产传媒mv男同| 92福利视频午夜1000合集在线观看| 电影一区二区三区久久免费观看| 欧美精品一区二区三区视频| 亚洲成人三级| 欧美日韩1区2区| 国产综合在线观看| 午夜精品久久久久久久久久久| 成人图片小说| 久久蜜臀中文字幕| 日韩欧美视频网站| www.亚洲色图.com| 欧美大黑帍在线播放| 国产精品白丝jk黑袜喷水| 在线观看成人av| 美女在线一区二区| 国产一区二区三区免费不卡| 国产精品久久观看| 91精品在线观| 欧美巨猛xxxx猛交黑人97人| 国产精品麻豆成人av电影艾秋| 正在播放国产一区| 国产精品一区在线看| 亚洲高清一二三区| 欧美极品欧美精品欧美图片| 91在线视频播放地址| 狠狠97人人婷婷五月| 久久蜜臀精品av| 超碰在线公开免费| 久久国产精品久久w女人spa| 国产精品影片在线观看| 九九亚洲精品| 国产美女扒开尿口久久久| 第九色区aⅴ天堂久久香| 国产精品日韩在线观看| 日韩久久综合| 精品国产91久久久久久久妲己| 日本免费在线视频观看| 亚洲最新av在线| 国产精品国精产品一二| 欧美一区二区三区啪啪| 一色桃子av在线| 日韩av在线看| free欧美| 久久精品在线播放| 国产伦理久久久久久妇女| 国产成人精品久久二区二区| 欧美日韩午夜| 一区二区三区四区在线视频| 99久免费精品视频在线观看| 亚洲一区日韩精品| 欧美性猛交xxxxx水多| huan性巨大欧美| 最新国产精品亚洲| 国产aⅴ精品一区二区三区久久| 国产精品久久97| 鲁大师成人一区二区三区| 日韩精品极品视频在线观看免费| 国产精品1区二区.| 国产国产国产国产国产国产| 欧美精品黑人性xxxx| 草民电影神马电影一区二区| 国产精品久久久久久久久久久久久久| 亚洲国产免费| 国产日韩一区二区在线| 精品国产电影一区| 校园春色亚洲| 国产精品日日摸夜夜添夜夜av| 麻豆成人综合网| 亚洲图片欧美午夜| 欧美国产日本视频| 午夜视频在线免费| 色综合电影网| 成人一道本在线| 特黄aaaaaaaaa毛片免费视频| 欧美日韩中文精品| 成人四虎影院| 91色在线视频| 国产精品综合在线视频| 黄色小视频在线播放| 亚洲区在线播放| 欧美电影免费| 男人天堂手机在线视频| 欧美日韩久久久久| 91亚洲精品| 国产精品二区在线观看| 国产偷国产偷精品高清尤物| 性xxxfreexxxx性欧美| 成人av.网址在线网站| 成人动漫在线一区| 欧美成人一区二区在线| 亚洲一区二区成人在线观看| 成人国产精品| 欧美另类高清视频在线| 黑人巨大精品欧美一区二区桃花岛| 欧美亚洲视频在线看网址| 青草av.久久免费一区| 嫩草懂你的影院| 色播亚洲婷婷| 色综合久久久久久久久| 九九热精品视频在线观看| 欧美成人全部免费| 欧美国产一区二区| 欧美大胆成人| 国产传媒一区| 伊人av成人| 亚洲免费观看高清完整| 韩日精品一区二区| 在线观看日本一区| 欧美丰满美乳xxx高潮www| 国产91精品对白在线播放| 一道本视频在线观看| 久久99热这里只有精品国产| 91影院在线免费观看| 欧美在线va视频| av女优在线播放| 久久综合久久八八| 国产婷婷色一区二区三区| 精品人人人人| 女同互忝互慰dv毛片观看| 日韩av三级在线观看| 亚洲一区二区三区激情| 国产精品久久久久久影院8一贰佰 国产精品久久久久久麻豆一区软件 | 色琪琪一区二区三区亚洲区| 色婷婷亚洲mv天堂mv在影片| 日本韩国一区| 看高清中日韩色视频| 亚洲缚视频在线观看| 国产69精品久久久久777| 视频一区国产| y4480在线8影院| 国产精品一区二区免费| 日韩你懂的电影在线观看| 精品一区二区三区免费观看| 日韩伦理在线一区| 91九色在线观看视频| 4438全国亚洲精品在线观看视频| 亚洲国产欧美一区二区三区丁香婷| 欧美69视频| 高清视频在线观看三级| 妞干网视频在线观看| 538国产精品视频一区二区| 色哟哟日韩精品| 久久精品999| 精品深夜福利视频| 婷婷在线视频| av免费观看大全| 国产精品日韩在线观看| 日韩视频123| 国产亚洲成aⅴ人片在线观看 | 成人h动漫在线| 成人精品视频在线| 精品国产亚洲在线| 久久久蜜桃精品| 欧美日韩国产色综合一二三四| 中文在线а√天堂| 免费白浆视频| 亚洲成人一区二区三区| 国产精品免费久久| 国产午夜久久久久| 麻豆国产欧美日韩综合精品二区| 亚洲国产精品久久久久| 97精品国产露脸对白| 日韩中文首页| 999av小视频在线| av网站在线不卡| 精品伊人久久大线蕉色首页| 国产亚洲精品一区二区| 天天影视涩香欲综合网| 国产一区二区三区美女| 成人羞羞网站入口| 亚洲国产福利| 视频在线国产| 800av在线免费观看| 国产伦精品一区二区三区精品视频 | 成人免费观看av| 围产精品久久久久久久|