回到首頁

2012年4月4日 星期三

ASP.NET Application 常用方法和屬性

老掉牙的東西了,但要用時都會忘,google找來的,記錄一下
ASP.NET Application常用方法和屬性: 

注意
·索引方式不推薦使用,1:唯讀,2:容易null和陣列超過索引。 
·物件名方式:物件名存在時,值會覆蓋,物件名不存在時返回 null,不會拋異常。 
·保存和更新操作記得加鎖,完事後記得解鎖。 

常用方法: 
//將新的物件添加到 HttpApplicationState 集合中(物件名-值)。
Application.Add("Count", 5);

//更新 HttpApplicationState 集合中的物件值。 
Application.Set("Count", 55);

//通過名稱獲取 HttpApplicationState 對象。
Application.Get("Count");

//通過索引獲取 HttpApplicationState 物件名。 
Application.Get(0);
Application.GetKey(0);

// HttpApplicationState 集合中移除命名物件。 
Application.Remove("Count");

//按索引從集合中移除一個 HttpApplicationState 物件。 
Application.RemoveAt(0);

// HttpApplicationState 集合中移除所有物件。
Application.RemoveAll();
Application.Clear();


常用屬性:
//通過名稱獲取單個 HttpApplicationState 對象的值。Item[Int32](讀寫)
Application["Count"] = 11;

//通過索引獲取單個 HttpApplicationState 物件。 Item[String](唯讀) 
object obj = Application[0];    

//獲取 HttpApplicationState 集合中的物件數。默認為0
int count = Application.Count;

//獲取 HttpApplicationState 集合中的便捷鍵。物件名的字串陣列。
string[] keys = Application.AllKeys;

//獲取對 HttpApplicationState 對象的引用。 該屬性提供與早期版本的 ASP 之間的相容性。 
HttpApplicationState AppState = Application.Contents;


注意:保存應用程式狀態中的值 :用鎖定方法將值寫入應用程式狀態:應用程式狀態變數可以同時被多個執行緒訪問。因此,為了防止產生無效資料,在設置值前,必須鎖定應用程式狀態,只供一個執行緒寫入。除非設置了其他類型的鎖,否則就應該始終在 lock 語句中修改應用程式狀態資料。 
//鎖定對 HttpApplicationState 變數的訪問以促進訪問同步。
Application.Lock();

//更新對象值
Application["Count"] = ((int)Application["Count"]) + 1;

//取消鎖定對 HttpApplicationState 變數的訪問以促進訪問同步。 
Application.UnLock();

沒有留言: