public static void Add(string key, object value, int?timeout) { System.Web.HttpCookie httpCookie = System.Web.HttpContext.Current.Request.Cookies[AdminCookie.CookiesName]; if (httpCookie == null) { httpCookie = new System.Web.HttpCookie(AdminCookie.CookiesName); } httpCookie.Expires = System.DateTime.Now.AddYears(50); httpCookie.Domain = AdminCookie.CookiesDomain; httpCookie.Values[key] = System.Web.HttpUtility.UrlEncode(value.ToString()); httpCookie.Values[key + AdminCookie.ExpireTimeStr] = ((!timeout.HasValue) ? System.Web.HttpUtility.UrlEncode(AdminCookie.CookiesExpire.ToString("yyyy-MM-dd HH:mm:ss")) : System.Web.HttpUtility.UrlEncode(System.DateTime.Now.AddMinutes((double)timeout.Value).ToString("yyyy-MM-dd HH:mm:ss"))); httpCookie.Values[AdminCookie.ValidateName] = AdminCookie.GetValidateStr(httpCookie); System.Web.HttpContext.Current.Response.Cookies.Add(httpCookie); }
public static void Add(System.Collections.Generic.Dictionary <string, object> dic, int?timeout) { System.Web.HttpCookie httpCookie = System.Web.HttpContext.Current.Request.Cookies[AdminCookie.CookiesName]; if (httpCookie == null) { httpCookie = new System.Web.HttpCookie(AdminCookie.CookiesName); } httpCookie.Expires = System.DateTime.Now.AddYears(50); httpCookie.Domain = AdminCookie.CookiesDomain; foreach (System.Collections.Generic.KeyValuePair <string, object> current in dic) { httpCookie.Values[current.Key] = System.Web.HttpUtility.UrlEncode(current.Value.ToString()); httpCookie.Values[current.Key + AdminCookie.ExpireTimeStr] = ((!timeout.HasValue) ? System.Web.HttpUtility.UrlEncode(AdminCookie.CookiesExpire.ToString("yyyy-MM-dd HH:mm:ss")) : System.Web.HttpUtility.UrlEncode(System.DateTime.Now.AddMinutes((double)timeout.Value).ToString("yyyy-MM-dd HH:mm:ss"))); } httpCookie.Values[AdminCookie.ValidateName] = AdminCookie.GetValidateStr(httpCookie); System.Web.HttpContext.Current.Response.Cookies.Add(httpCookie); }
public static object GetValue(string key) { if (key != null && key != "") { System.Web.HttpCookie httpCookie = System.Web.HttpContext.Current.Request.Cookies[AdminCookie.CookiesName]; if (httpCookie == null) { return(null); } httpCookie.Expires = System.DateTime.Now.AddYears(50); httpCookie.Domain = AdminCookie.CookiesDomain; if (!AdminCookie.ValidateCookies(httpCookie)) { httpCookie.Expires = System.DateTime.Now.AddYears(-1); System.Web.HttpContext.Current.Response.Cookies.Add(httpCookie); return(null); } string text = httpCookie.Values[key + AdminCookie.ExpireTimeStr]; System.DateTime t; if (string.IsNullOrEmpty(text) || !System.DateTime.TryParse(System.Web.HttpUtility.UrlDecode(text), out t)) { httpCookie.Values[key] = ""; httpCookie.Values[key + AdminCookie.ExpireTimeStr] = ""; httpCookie.Values[AdminCookie.ValidateName] = AdminCookie.GetValidateStr(httpCookie); System.Web.HttpContext.Current.Response.Cookies.Add(httpCookie); return(null); } System.DateTime now = System.DateTime.Now; if (t > now) { return(System.Web.HttpUtility.UrlDecode(httpCookie.Values[key])); } httpCookie.Values[key] = ""; httpCookie.Values[key + AdminCookie.ExpireTimeStr] = ""; httpCookie.Values[AdminCookie.ValidateName] = AdminCookie.GetValidateStr(httpCookie); System.Web.HttpContext.Current.Response.Cookies.Add(httpCookie); } return(null); }