WEB頁麵傳參有哪些方式
Asp.Net頁麵之間傳遞數據大致有這麼幾種方式:1.GET方式:
即通過URL加上自定義的name-value集合,這個一般大家都在用,也很方便,而且客戶可以直接通過URL訪問特定的頁麵。
2.POST方式:
即通過提交Form來傳遞Form裏的數據,可以在Form中添加Hidden字段來自定義數據。
3.Application域變量:
多個頁麵訪問或修改全局變量來交換數據,記得訪問時候要進行加鎖/解鎖。由於是在服務端的變量,可以存儲複雜結構的變量類型或對象。
4.Session域變量:
多個頁麵訪問或修改會話變量來交換數據,記得訪問時候也要進行加鎖/解鎖。由於是在服務端的變量,可以存儲複雜結構的變量類型或對象。
(單個頁麵或包含用戶控件可以通過下麵的方式)
5.ViewState域變量:
類似Form變量,存儲在客戶段頁麵裏,可以使用複雜結構類型的變量或者對象(同時對象要實現Serializable接口,畢竟最終要序列化到文本的),但會增加最終生成的html頁麵的大小而增加了數據流量,一般在寬帶環境可以忽略掉的。
6.Request域變量:
把需要傳遞的數據存放在HttpContext結構中,以供多個Request後續頁麵使用,這個在應用用戶控件的時候蠻實用的。
7.Cookie域變量:
這個用的很少,一般就隻是用來保存用戶痕跡。
8.Cache域變量:
服務端緩存變量,一般用於給多個頁麵讀數據。
以前Web編程是ColdFusion入門的,也就是99年底的時候,CF那個時候已經有上麵的幾種方式(ViewState倒是沒有),而且還有其他幾種:
Sever域:單個服務器上的全局變量
Application域:單個應用程序上的全局變量(群集時可跨多個服務器)
Session域:就是一般的會話,如果客戶端沒有開啟Cookie可以通過Url中的UID來標示
Cookie域:和其他Web編程的差不多
Request域:就是Get方式的
Form域:就是Post方式的
Flash域:與flash通訊時候的變量
Client域:和客戶端瀏覽器相關的變量,主要用於用戶操作跟蹤
Custom Tag域:自定義控件內的局部變量
CF Tag域:CF標準控件內的局部變量
CGI域:CGI訪問的全局變量,包括Request、Server、Client等一些標準的變量,和上麵的幾種方式類似,還有的就是CGI環境變量,一般都是用來分析客戶端、服務端的上下文環境的
Variable域:單頁麵範圍內的變量
Caller域:被調用的自定義控件訪問調用方的變量,目前已經不被使用了。
最後更新:2017-04-02 00:06:32