public class CookieHelper : System.Web.SessionState.IReadOnlySessionState
    {

public static void SetCookies(HttpContext context, string cookieName, Hashtable hashtable)
        {
            HttpCookie myCookie  = new HttpCookie(cookieName);

foreach (DictionaryEntry de in hashtable)
            {
                myCookie.Values.Remove(de.Key.ToString());
                myCookie.Values.Add(de.Key.ToString(), de.Value.ToString());
            }
            context.Response.Cookies.Add(myCookie);
        }

public static void SetSession(HttpContext context, string sessionName, string UserInfoId)
        {
            context.Session[sessionName] = UserInfoId;
        }

public static string GetSession(HttpContext context, string sessionName)
        {
            try
            {
                if (context.Session != null)
                {
                    return context.Session[sessionName].ToString();
                }
                else
                {
                    return "null";
                }
            }
            catch (Exception)
            {

return "null";
            }
        }

public static void RemoveSession(HttpContext context, string sessionName)
        {
            if (context.Session != null)
            {
                context.Session.Remove(sessionName);
            }
        }

public static HttpCookie GetCookies(HttpContext context, string cookieName)
        {
            if (context.Request.Cookies[cookieName] != null)
            {
                HttpCookie myCookie = context.Request.Cookies[cookieName];
                return myCookie;
            }
            else
            {
                return null;
            }
        }

public static void SetCookie(HttpContext context,string cookieName, string cookieValue)
        {
            HttpCookie myCookie = new HttpCookie(cookieName);

myCookie.Value = context.Server.UrlEncode(cookieValue);

context.Response.Cookies.Add(myCookie);
        }

public static string GetCookie(string cookieName)
        {
            HttpContext context = HttpContext.Current;
            if (context.Request.Cookies[cookieName] != null)
                return context.Server.UrlDecode(context.Request.Cookies[cookieName].Value);
            else
                return string.Empty;
        }

public static void RemoveCookie(HttpContext context,string cookieName)
        {
            if (context.Request.Cookies[cookieName] != null)
            {
                SetCookie(context, cookieName, "");
            }
        }

}

封装对Cookie和Session设置或取值的类的更多相关文章

  1. cookie 和 session 设置

    cookie: 保存在浏览器上的一组键值对, 是由服务器让浏览器进行设置的 下次浏览器访问的时候会携带cookie. request是客户端请求, response是服务端响应. 读取客户端的cook ...

  2. Flask中cookie和session设置与csrf原理攻防

    Flask之操作cookie app.py from flask import Flask, request, Response app = Flask(__name__) @app.route('/ ...

  3. flask中cookie和session设置

    flask中cookie和session介绍   一.cookie: 在网站中,http请求是无状态的.也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户. ...

  4. Spring MVC 常用注解 和session界面渲染取值

    @RequestParams name 修饰当前形参的属性 value 和name属性一样 也是修饰当前属性 defaultValue 给属性设置一个默认值 默认属性 required 必备属性 1. ...

  5. js localStorage 设置和取值

    定义 Storage 对象,对象有get(取值), set(设置), add(加入新值)三个方法 const Storage = {} Storage.get = function (name) { ...

  6. web.config设置和取值

    博客园中有一篇文章对web.config的结构做了很详细的介绍,原文见 http://www.cnblogs.com/gaoweipeng/archive/2009/05/17/1458762.htm ...

  7. jquery对strutrs2 <s:radio>标签的设置和取值

    今天郁闷了1小时. 需求是这样的: <s:radio  list="#{0:'男',1:'女'}" value="member.sex" id=" ...

  8. java 反射原理写了一个赋值和取值通用类

    首先了解一下反射的原理,什么是反射?所谓的反射就是指java 语言在运行时拥有一项自观的能力,反射能使你得到装载到 jvm 中的类的内部信息,它不需要你在编码的时候就知道所需类的内部信息,允许程序执行 ...

  9. falsk 与 django cookie和session存、取、删的区别

    falsk cookie的存取删需导入from flask import Flask,make_response,request# 存COOKIE的方法@app.route('/setcookie') ...

随机推荐

  1. vim代码折叠功能

    问题:怎样在vim中实现代码折叠功能? 解决方法:直接使用vim自带的快捷键和命令,便可以实现功能强大的折叠 小试折叠: 1  :set fdm=marker  在vim中执行该命令 2  5G  将 ...

  2. MySQL Explain 结果解读与实践

    Explain 结果解读与实践   基于 MySQL 5.0.67 ,存储引擎 MyISAM .   注:单独一行的"%%"及"`"表示分隔内容,就象分开&qu ...

  3. laravel框架——线上环境错误总结

    除了根目录,其他目录访问全是Not Found

  4. js实现

    1,核心 ECMAScript 2,文档对象模型DOM 3,浏览器对象模型BOM

  5. BZOJ 1070 修车

    Description 同一时刻有\(N\)位车主带着他们的爱车来到了汽车维修中心.维修中心共有\(M\)位技术人员,不同的技术人员对不同的车进行维修所用的时间是不同的.现在需要安排这\(M\)位技术 ...

  6. 非正式js语法

    有一种格式化的变种(该变种没有通过JSLint测试)略过了花括号,并将if语句放在同一行中. 这样做的好处是该循环语句变得可读性更强(对于每个拥有属性X的元素,就直接对X进行操作). 这样做的结果是只 ...

  7. 辉哥用的这种方法实现ZABBIX的MYSQL批量监控

    不错的.集中和分布式,总是一对要解决的问题.应该可以再想更好的策略~~ 一.方案需求及思路 因跑MySQL服务的服务器比较多,并且每台服务器可能会运行多个不同端口的数据库,如果单独手动一台一台去修改a ...

  8. VS2012中使用Boost库的方法(超级简单)

    很不错的博客一定得看 http://my.csdn.net/caimouse 1.下载boost库 从http://www.boost.org上下载到目前最新的boost库,快速传送门:boost_1 ...

  9. WM_SIZE和WM_MOVE的函数体内容为什么不一样?

    搞不懂,要想一想- procedure TWinControl.WMSize(var Message: TWMSize); begin UpdateBounds; // 类函数 inherited; ...

  10. Codeforces 715A & 716C Plus and Square Root【数学规律】 (Codeforces Round #372 (Div. 2))

    C. Plus and Square Root time limit per test 2 seconds memory limit per test 256 megabytes input stan ...