菜的像徐坤
排名
6
文章
6
粉丝
16
评论
8
{{item.articleTitle}}
{{item.blogName}} : {{item.content}}
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2024TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术

.net core session与cookies 的存取

5474人阅读 2021/5/28 17:11 总访问:854128 评论:0 收藏:0 手机
分类: .net core

前言

session

core中使用session需要添加session的服务
在Startup中打开

配置session

 //启用session
            app.UseSession();

存session

            //存session
            HttpContext.Session.SetString("username", "xx");

取session

            //取session
            string username = HttpContext.Session.GetString("username");

cookies

存cookies

            //存cookies
            HttpContext.Response.Cookies.Append("name", name);

取cookies

            //获取cookies
            HttpContext.Request.Cookies.TryGetValue("name",out name);

session存对象扩展方法

core里的session并不能存对象,想要存取对象,只能借助JsonConvert将对象转换成json字符串然后解析

//添加扩展方法
 public static class SetSessionObj
    {
        //存
        public static void SetObj<T>(this ISession session, string key , T value) 
        {
            //把对象解析成json对象存
            session.SetString(key, JsonConvert.SerializeObject(value));
        }
        //取
        public static T GetObj<T>(this ISession session, string key)
        {
            //根据key拿到session的字符串
            string value = session.GetString(key);

            return value == null ? default(T) : JsonConvert.DeserializeObject<T>(value);
        }
    }


评价