DsJian.Mvc/Extensions/HttpCookieCollectionExtensions.cs

(开头部分) 3KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

// ================================================
// HttpCookieCollectionExtensions.cs, Cookie扩展
// Copyright (C) 2010 Benking
// mail:ben.wangzj@gmail.com
// website:http://www.dsjian.com/
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
// ================================================

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using DsJian.Interface.Model;

namespace DsJian.Mvc.Extensions
{
    /// <summary>
    /// Cookie扩展
    /// </summary>
    public static class HttpCookieCollectionExtensions
    {
        private const string anonymousUserCookieName = "cookie_anonymousUser";
        private const string remembermeCookieName = "cookie_rememberme";

        public static void ClearAnonymousUser(this HttpCookieCollection cookies)
        {
            cookies.Add(new HttpCookie(anonymousUserCookieName) { Expires = DateTime.Now.AddDays(-1) });
        }

        public static IUserBase GetAnonymousUser(this HttpCookieCollection cookies)
        {
            IUserBase user = null;

            HttpCookie cookie = cookies[anonymousUserCookieName];
            if (cookie != null)
            {
                user = user.Deserialize(cookie.Value);
            }
            else
            {
                //empty user
                user = new UserBase();
            }

            return user;
        }

        public static void SetAnonymousUser(this HttpCookieCollection cookies, IUserBase user)
        {
            HttpCookie cookie = new HttpCookie(anonymousUserCookieName, user.Serialize());
后面还有 31 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。