using System; using System.Web; namespace Quiz.SiteBase { public class SiteCookie { /// /// 保存一个Cookie /// /// Cookie名称 /// Cookie值 /// Cookie过期时间(小时),0为关闭页面失效 public static void SaveCookie(string CookieName, string CookieValue, double CookieTime) { SaveCookie(CookieName, CookieValue, CookieTime, null); } /// /// 保存一个Cookie /// /// Cookie名称 /// Cookie值 /// Cookie过期时间(小时),0为关闭页面失效 /// Cookie域 public static void SaveCookie(string CookieName, string CookieValue, double CookieTime, string CookieDomain) { HttpCookie myCookie = new HttpCookie(CookieName); DateTime now = DateTime.Now; myCookie.Value = CookieValue; if (!string.IsNullOrEmpty(CookieDomain)) myCookie.Domain = CookieDomain; if (CookieTime != 0) { myCookie.Expires = now.AddDays(CookieTime); if (HttpContext.Current.Response.Cookies[CookieName] != null) HttpContext.Current.Response.Cookies.Remove(CookieName); HttpContext.Current.Response.Cookies.Add(myCookie); } else { if (HttpContext.Current.Response.Cookies[CookieName] != null) HttpContext.Current.Response.Cookies.Remove(CookieName); HttpContext.Current.Response.Cookies.Add(myCookie); } } /// /// 保存传来的制定Cookie值 /// /// public static void SaveCookie(HttpCookie cookie) { HttpContext.Current.Response.Cookies.Add(cookie); } /// /// 保存一个Cookie /// /// Cookie名称 /// Cookie值 /// Cookie过期时间(小时),0为关闭页面失效 public static void SaveCookie(HttpCookie cookie, double CookieTime) { DateTime now = DateTime.Now; if (CookieTime != 0) { cookie.Expires = now.AddDays(CookieTime); if (HttpContext.Current.Response.Cookies[cookie.Name] != null) HttpContext.Current.Response.Cookies.Remove(cookie.Name); HttpContext.Current.Response.Cookies.Add(cookie); } else { if (HttpContext.Current.Response.Cookies[cookie.Name] != null) HttpContext.Current.Response.Cookies.Remove(cookie.Name); HttpContext.Current.Response.Cookies.Add(cookie); } } /// /// 取得CookieValue /// /// Cookie名称 /// Cookie的值 public static string GetCookie(string CookieName) { HttpCookie myCookie = new HttpCookie(CookieName); myCookie = HttpContext.Current.Request.Cookies[CookieName]; if (myCookie != null) return myCookie.Value; else return null; } /// /// 取得CookieValue /// /// Cookie名称 /// Cookie内某一键所对应的值 /// Cookie的值 public static string GetCookie(string CookieName, string CookieValueName) { HttpCookie myCookie = new HttpCookie(CookieName); myCookie = HttpContext.Current.Request.Cookies[CookieName]; if (myCookie != null) { if (myCookie[CookieValueName] != null) { return myCookie[CookieValueName]; } else { return ""; } } else { return ""; } } /// /// 根据Cookie名称获得指定的Cookie /// /// Cookie名称 /// public static HttpCookie GetCookies(string cookiename) { HttpCookie cookie = HttpContext.Current.Request.Cookies[cookiename]; return cookie; } /// /// 清除CookieValue /// /// Cookie名称 public static void ClearCookie(string CookieName) { HttpCookie myCookie = new HttpCookie(CookieName); DateTime now = DateTime.Now; myCookie.Expires = now.AddYears(-2); HttpContext.Current.Response.Cookies.Add(myCookie); } } }