牛骨文教育服务平台(让学习变的简单)
博文笔记

ASP.NET Cookie的存储与读取

创建时间:2017-04-21 投稿人: 浏览次数:1148
 一般ASP.NET中Cookie的存储有两种方法,一种是直接为Cookie集合设置Cookie属性。第二种是创建HttpCookie对象的一个实例并将该实例添加到Cookie集合中,当然读取就很简单了。

(一)、Cookie的存储

(1)、通过Response对象的Cookie集合存储。语法格式:

[csharp] view plain copy

    Response.Cookies["Cookie的名称"].Value=变量值;  


例如:

[csharp] view plain copy

    Response.Cookies["UserName"].Value=“Chinajiyong“;  


(2)、通过HttpCookie对象的实例存储。语法格式:

[csharp] view plain copy

    HttpCookie cookie=new HttpCookie("Cookie名称","值");  
    Response.Cookies.Add(cookie);  

或者

[csharp] view plain copy

    HttpCookie cookie=new HttpCookie("Cookie名称");  
    cookie.Value="值";  
    Response.Cookies.Add(cookie);  


例如:

[csharp] view plain copy

    HttpCookie cookie=new HttpCookie("UserName","Chinajiyong");  
    Response.Cookies.Add(cookie);  

或者

[csharp] view plain copy

    HttpCookie cookie=new HttpCookie("UserName");  
    cookie.Value="Chinajiyong";  
    Response.Cookies.Add(cookie);  


除了上述方法存储Cookie之外,还可以进行多值Cookie的存储,

方法一:   

[csharp] view plain copy

    Response.Cookies["LoginInfo"]["UserName"].Value=“Chinajiyong“;  
    Response.Cookies["LoginInfo"]["Password"].Value=“12345“;  

方法二:        

[csharp] view plain copy

    HttpCookie cookie=new HttpCookie("LoginInfo");  
    cookie.Values["UserName"]="Chinajiyong";  
    cookie.Values["Password"]="12345";  
    Response.Cookies.Add(cookie);  

(2)、读取Cookie方法
[csharp] view plain copy

    if(Request.Cookies["UserName"]!=null)  
    {  
      string username=Request.Cookies("UserName").Value;  
    }  

对于多值的Cookie的读取

[csharp] view plain copy

    if(Request.Cookies["LoginInfo"]!=null)  
    {  
      string username=Request.Cookies["LoginInfo"]["UserName"];  
      string password=Request.Cookies["LoginInfo"]["Password"];  
    }  

总之,在获取Cookie值之前,应该确保该Cookie确实存在,否则将得到一个异常。 


声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。