1. 程式人生 > >ASP.NET頁面傳值(轉)

ASP.NET頁面傳值(轉)

http://www.cnblogs.com/wangjiming/p/6275854.html

【1】Request.QueryString  當前請求的 URL 中由客戶端傳送的查詢字串變數。

string sortName = Request.QueryString["sortName"];

  總結:獲取位址列引數(以GET方式提交的資料),如a.aspx?name="Jack",那麼“Jack”便可以由Request.QueryString獲取。

 

【2】Request.Form  獲取客戶端傳送的表單變數的集合。

string selectValue= Request.Form["selectValue"];

  總結:獲取POST提交的表單中指定名字的引數值。

【3】

【4】Application

private static Dictionary<string, string> GetOnlineState()
{
	return (Dictionary<string, string>)HttpContext.Current.Application["Online"] ??
			new Dictionary<string, string>();
}

private static void SetOnlineState(Dictionary<string, string> onlineDictionary)
{
	HttpContext.Current.Application.Lock();
	HttpContext.Current.Application["Online"] = onlineDictionary;
	HttpContext.Current.Application.UnLock();
}

總結:

1、Application物件的作用範圍是整個全域性,也就是說對所有使用者都有效。它在整個應用程式生命週期中都是有效的,類似於使用全域性變數一樣,所以可以在不同頁面中

對它進行存取。它和Session變數的區別在於,前者是所有的使用者共用的全域性變數,後者是各個使用者獨有的全域性變數。可能有人會問,既然所有使用者都可以使用application

變數,那他可以用在什麼場合呢?這裡舉個例子:網站訪問數。多個請求訪問時都可以對它進行操作。

2、優點:使用簡單,消耗較少的伺服器資源;不僅能傳遞簡單資料,還能傳遞物件;資料量大小是不限制的。

3、缺點:作為全域性變數容易被誤操作。所以單個使用者使用的變數一般不能用application。

4、在源頁面的程式碼中建立你需要傳遞的名稱和值構造Application變數:Application["name"]="Value(Or Object)";在目的頁面的程式碼使用Application變數取出傳遞的值。Result = Application["name"]。

5、常用lock和unlock方法用來鎖定和解鎖,為了防止併發修改。