微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Silverlight CookiesHelper类


public  class CookiesHelper

    {
         /// <summary>
         /// 添加Cookie
         /// </summary>
         /// <param name="key">名称</param>
         /// <param name="value">值</param>
         public  static  void SetCookie( String key,  String  value)
        {
            SetCookie(key,  valuenullfalse);
        }
         /// <summary>
         /// 添加Cookie
         /// </summary>
         /// <param name="key">名称</param>
         /// <param name="value">值</param>
         /// <param name="expires">过期时间</param>
         public  static  void SetCookie( String key,  String  value, TimeSpan expires)
        {
            SetCookie(key, expires,  false);
        }
         /// <summary>
         /// 添加Cookie
         /// </summary>
         /// <param name="key">名称</param>
         /// <param name="value">值</param>
         /// <param name="expires">过期时间</param>
         /// <param name="path">路径</param>
         /// <param name="domain">域</param>
         /// <param name="secure"></param>
         public  static  void SetCookie( String key, TimeSpan? expires,  String path,  String domain,  bool secure)
        {
            var cookie =  new StringBuilder();
            cookie.Append( String.Concat(key,  "="value));
             if (expires.HasValue)
            {
                 DateTime expire =  DateTime.UtcNow + expires.Value;
                cookie.Append( String.Concat( ";expires=", expire.ToString( "R")));
            }
             if (! String.IsNullOrEmpty(path))
            {
                cookie.Append( String.Concat( ";path=", path));
            }
             if (! String.IsNullOrEmpty(domain))
            {
                cookie.Append( String.Concat( ";domain=", domain));
            }
             if (secure)
            {
                cookie.Append( ";secure");
            }
            HtmlPage.Document.SetProperty( "cookie", cookie.ToString());
        }

         /// <summary>
         /// 获取Cookie的值
         /// </summary>
         /// <param name="key"></param>
         /// <returns></returns>
         public  static  string GetCookie( String key)
        {
             String[] cookies = HtmlPage.Document.Cookies.Split(';');
             String result = (from c  in cookies
                             let keyvalues = c.Split('=')
                             where keyvalues.Length == 2 && keyvalues[0].Trim() == key.Trim()
                             select keyvalues[1]).FirstOrDefault();
             return result;
        }

         /// <summary>
         /// 删除Cookie
         /// </summary>
         /// <param name="key"></param>
         public  static  void DeleteCookie( String key)
        {
             DateTime expir =  DateTime.UtcNow - TimeSpan.FromDays(1);
             string cookie =  String.Format( "{0}=;expires={1}",
                key, expir.ToString( "R"));
            HtmlPage.Document.SetProperty( "cookie", cookie);
        }
         /// <summary>
         /// 检测cookie是否存在 成功返回True 否则返回 False
         /// </summary>
         /// <param name="key"></param>
         /// <param name="value"></param>
         /// <returns></returns>
         public  static  bool Exists( String key,  String  value)
        {
             return HtmlPage.Document.Cookies.Contains( String.Format( "{0}={1}", key,  value));         }     }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐