예제 #1
0
 public static void SaveCookie(string cookieName, string value, string cookieDomain, CookieExpiresType expiresType, int cookieTime)
 {
     SaveCookie(cookieName, new string[] { cookieName }, new string[] { value }, cookieDomain, expiresType, cookieTime);
 }
예제 #2
0
        /// <summary>
        /// 保存一个Cookie,0为永不过期
        /// </summary>
        /// <param name="cookieName">Cookie名称</param>
        /// <param name="CookieValue">Cookie值</param>
        /// <param name="CookieTime">Cookie过期时间(天数),0为关闭页面失效</param>
        public static void SaveCookie(string cookieName, string[] paramNames, string[] paramValues, string cookieDomain, CookieExpiresType expiresType, int cookieTime)
        {
            HttpCookie myCookie = new HttpCookie(cookieName);
            DateTime   now      = DateTime.Now;

            if (paramNames.Length == 1 && paramNames[0] == cookieName)
            {
                myCookie.Value = paramValues[0];
            }
            else
            {
                for (int index = 0; index < paramNames.Length; index++)
                {
                    myCookie.Values[paramNames[index]] = paramValues[index];
                }
            }

            if (cookieDomain != string.Empty && cookieDomain != null)
            {
                myCookie.Domain = cookieDomain;
            }

            //设置过期时间
            switch (expiresType)
            {
            case CookieExpiresType.None:
                //不处理过期
                break;

            case CookieExpiresType.Year:
                myCookie.Expires = now.AddYears(cookieTime);
                break;

            case CookieExpiresType.Month:
                myCookie.Expires = now.AddMonths(cookieTime);
                break;

            case CookieExpiresType.Day:
                myCookie.Expires = now.AddDays(cookieTime);
                break;

            case CookieExpiresType.Hour:
                myCookie.Expires = now.AddHours(cookieTime);
                break;

            case CookieExpiresType.Minute:
                myCookie.Expires = now.AddMinutes(cookieTime);
                break;

            case CookieExpiresType.Second:
                myCookie.Expires = now.AddSeconds(cookieTime);
                break;
            }

            if (HttpContext.Current.Response.Cookies[cookieName] != null)
            {
                HttpContext.Current.Response.Cookies.Remove(cookieName);
            }

            HttpContext.Current.Response.AppendCookie(myCookie);
        }
예제 #3
0
 public static void SaveCookie(string cookieName, string value, CookieExpiresType expiresType, int cookieTime)
 {
     SaveCookie(cookieName, value, null, expiresType, cookieTime);
 }