ASP.NET頁面傳值(轉)
阿新 • • 發佈:2018-11-22
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方法用來鎖定和解鎖,為了防止併發修改。