Cookie--c#.net深入研究实例

来源:互联网 发布:财经数据接口 编辑:程序博客网 时间:2024/06/05 19:41
public class Cookies {               
        
private HttpCookie myCookie = null;
        
public Cookies(string v_id, System.Web.UI.Page v_page) {
            
try {
                
if (v_page.Request.Cookies[v_id] != null && v_page.Request.Cookies[v_id].Values.Count > 0{
                    myCookie 
= v_page.Request.Cookies[v_id];
                }
 else {
                    myCookie 
= new HttpCookie(v_id);
                }

            }
 catch(Exception me) {
                myCookie 
= new HttpCookie(v_id);
            }

        }


        
public void SaveCookie(string CookieName, string CookieValue ,System.Web.UI.Page page) {

            
try
            
{                              
                
if(myCookie.Values.Count>0) myCookie.Values.Remove(CookieName);
                myCookie.Values.Add(CookieName, CookieValue);
               
// myCookie.Expires = DateTime.Now.AddHours(0.5);
                page.Response.AppendCookie(myCookie);

            }
catch{
            
            
            }


        }

       
        
public string GetCookie(string CookieName, System.Web.UI.Page page)
        
{
            
try
            
{
              
               
return myCookie.Values[CookieName].ToString();                
            }

            
catch {

                
return "";
            }

        }


       
        
public void ClearCookie(string CookieName) {
            
try
            
{
                
if(myCookie!=null && myCookie.Values.Count>0)
                myCookie.Values.Remove(CookieName);
            }

            
catch { }
        }

        
    }

如果想要使用cookie实现Session的一般功能之关闭IE使cookie失效,关键点是:

   // myCookie.Expires = DateTime.Now.AddHours(0.5);       

不要添加到期时间即可。