c#.net在WEB頁中設置COOKIES


一、設置cookies的方法很簡單,有以下兩種方法: 

1、直接添加Cookie值: 
   Response.Cookies["userName"] = "Tom";  
   Response.Cookies["userName"].Expires = DateTime.Now.AddDays(1) ; \\過期時間,在Cookies文件中無法查看,也不能調用. 

2、創建Cookie對象的一個實例: 
   HttpCookie cookie=new HttpCookie("userName"); 
   cookie.Value = "Tom"; 
   cookie.Expires = DateTime.Now.AddDays(1) ;  
   Response.Cookies.Add(aCookie)  

用以上任一方法都可以生成一個有“userName”項的文件, 在你的Internet臨時文件夾中你可以查看它。 

也可以創建和添加有子鍵的Cookies,如: 
Response.Cookies["userInfo"]["userName"] = "Tom";  

或: 
   HttpCookie cookie=new HttpCookie("userInfo"); 
   cookie.Values["userName"] = "Tom"; 
   aCookie.Expires = DateTime.Now.AddDays(1);  
   Response.Cookies.Add(aCookie)  

二、檢索Cookies: 
  Cookies某一鍵的值爲:  
  Server.HtmlEncode(Request.Cookies["userInfo"]["userName"]) 
  你可以用Response.Write()方法輸出它到頁面,如: 
  Response.Write(Server.HtmlEncode(Request.Cookies["userInfo"]["userName"])); 

  或賦值給其它變量: 

  string strCookie1=Server.HtmlEncode(Request.Cookies["userInfo"]["userName"]); 
   
  用Cookies[i]數組可以檢索所有項和子鍵,如: 
  string[] cooName  = new string[Request.Cookies.Count]; 
  string[] cooValue = new string[Request.Cookies.Count];   
  HttpCookie aCookie; 
  for(int i=0;i<Request.Cookies.Count;i++){ 
    aCookie = Request.Cookies[i];  
    cooName[i]  = Server.HtmlEncode(aCookie.Name); 
    if(!aCookie.HasKeys){ 
       cooValue[i] = Server.HtmlEncode(aCookie.Value); 
    }else{ 
      string[] subcooName  = new string[aCookie.Values.Count]; 
      string[] subcooValue = new string[aCookie.Values.Count];  
      for(int j=0;j<aCookie.Values.Count;j++){   
        subcooName[j]  = Server.HtmlEncode(aCookie.Values.AllKeys[j]); 
        subcooValue[j] = Server.HtmlEncode(aCookie.Values[j]); 
      } 
    } 
  } 

三、修改Cookies 
   如果是數值類型的Cookie值,比如訪問次數,你可以讀取該值進行加減操作後再存回,一般的修改直接存入新值就可以了,系統自動用新值覆蓋原值,存入的方法與創建相同。 

四、刪除Cookies 
刪除Cookies只要把有效期設爲失效就可以了,如在創建時設有效期爲一天: 
  cookie.Expires = DateTime.Now.AddDays(1) ; 
要刪除則設爲: 
cookie.Expires = DateTime.Now.AddDays(-1) ; 

  刪除子鍵: 
HttpCookie cookie; 
cookie = Request.Cookies["userInfo"]; 
  aCookie.Values.Remove("userName"); 
  aCookie.Expires = DateTime.Now.AddDays(1); 
  Response.Cookies.Add(aCookie); 
標籤: cookie , C#
發佈了14 篇原創文章 · 獲贊 1 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章