Sessiong

  1. 添加程序集 Microsoft.AspNetCore.Session
  2. 在Startup.cs 的 ConfigureServices中添加Session中间件设置
// session 设置
services.AddSession(options =>
{
// 设置 Session 过期时间
options.IdleTimeout = TimeSpan.FromDays(90);
options.CookieHttpOnly = true;
});
  1. 在Startup.cs 的 Configure中添加Session服务
// 要添加在MVC服务前面
app.UseSession();
  1. 设置Session数据
// 这是一个拓展方法 将字符串直接设置为Session的值
HttpContext.Session.SetString("Key", Value);
// 这里的Value 需要一个 byte[]
HttpContext.Session.Set("Key", Value);
  1. 获取Session的值
// 这里用的的C# 7.0的语法 out 可以直接声明使用
loigncontext.HttpContext.Session.TryGetValue("Key", out byte[] Value);
// 将获取的byte[] 转换为字符串
var str = System.Text.Encoding.UTF8.GetString(Value)
//

*1. 将对象转换为byte[]

// 对象先转换为 json对象字符串 需要(using Newtonsoft.Json;)
string json = JsonConvert.SerializeObject(obj);
byte[] serializedResult =
//json对象字符串转为byte[]
System.Text.Encoding.UTF8.GetBytes(json);

*2. 将byte[]转换为对象

// byte[]先转换为json对象字符串
var strJson = System.Text.Encoding.UTF8.GetString(buff);
// 把json对象字符串转换为指定对象 需要using Newtonsoft.Json;
JsonConvert.DeserializeObject<obj>(strJson)

*3. 将byte[]转换成对象

/// <summary>
/// 将byte[]转换成对象
/// </summary>
/// <param name="buff">要转换byte[]</param>
/// <returns>转换完成后对象</returns>
public static T Bytes2Object<T>(byte[] buff)
{
string json = System.Text.Encoding.UTF8.GetString(buff);
// 这个方法需要 using Newtonsoft.Json;
return JsonConvert.DeserializeObject<T>(json);
}

.Net Core Session使用的更多相关文章

  1. net core体系-web应用程序-4net core2.0大白话带你入门-10asp.net core session的使用

    asp.net core session的使用   Session介绍 本文假设读者已经了解Session的概念和作用,并且在传统的.net framework平台上使用过. Asp.net core ...

  2. IT咨询顾问:一次吐血的项目救火 java或判断优化小技巧 asp.net core Session的测试使用心得 【.NET架构】BIM软件架构02:Web管控平台后台架构 NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json 使用LINQ生成Where的SQL语句 js_jquery_创建cookie有效期问题_时区问题

    IT咨询顾问:一次吐血的项目救火   年后的一个合作公司上线了一个子业务系统,对接公司内部的单点系统.我收到该公司的技术咨询:项目启动后没有规律的突然无法登录了,重新启动后,登录一断时间后又无法重新登 ...

  3. .net core session部分浏览器或移动客户端不可用

    .net core session使用有很多文章,这里不再赘述. 问题现象为大部分浏览器或者移动客户端(例如微信.支付宝.钉钉)等都可以正常使用.但部分支付宝用户及钉钉用户确无法使用. 写入后读取不到 ...

  4. asp.net core session丢失问题排查

    最近公司采用asp.net core的站点在外测环境中,总是发现存在session丢失的情况.排查了好久,客户端.AspNetCore.Session的cookie未丢失,session的分布式缓存采 ...

  5. .NET Core Session的简单使用

    前言 在之前的.NET 里,我们可以很容易的使用Session读取值.那今天我们来看看 如何在.NET Core中读取Session值呢? Session 使用Session之前,我们需要到Start ...

  6. .NET Core Session的使用方法

    刚使用.NET Core会不习惯,比如如何使用Session:不仅需要引用相应的类库,还需要在Startup.cs里进行注册. 1.在你的项目上基于NuGet添加: install-package M ...

  7. asp.net core session的使用

    Session介绍 本文假设读者已经了解Session的概念和作用,并且在传统的.net framework平台上使用过. Asp.net core 1.0好像需要单独安装,在nuget控制台,选择你 ...

  8. asp.net core session使用

    一.配置回话状态 Microsoft.AspNetCore.App metapackage 中包含的 Microsoft.AspNetCore.Session 包提供中间件来管理会话状态. 若要启用会 ...

  9. Asp.net Core Session 存储任意对象

    using Microsoft.AspNetCore.Http; using Newtonsoft.Json; public static class SessionExtensions { publ ...

  10. .NET Core Session源码探究

    前言     随着互联网的兴起,技术的整体架构设计思路有了质的提升,曾经Web开发必不可少的内置对象Session已经被慢慢的遗弃.主要原因有两点,一是Session依赖Cookie存放Session ...

随机推荐

  1. 机器学习基石 1 The Learning Problem

    机器学习基石 1 The Learning Problem Introduction 什么是机器学习 机器学习是计算机通过数据和计算获得一定技巧的过程. 为什么需要机器学习 1 人无法获取数据或者数据 ...

  2. Hibernate写配置文件无提示信息解决

    把Hibernate的相关jar包引入工程后,在配置hibernate.cfg.xml时没有提示信息,对于开发人员来说,那么多标签,标签有那么多属性,全部都记住显然是不可能的,遇到这种情况是很头疼的事 ...

  3. Https握手协议以及证书认证

    1. 什么是https Https = http + 加密 + 认证 https是对http的安全强化,在http的基础上引入了加密和认证过程.通过加密和认证构建一条安全的传输通道.所以https可以 ...

  4. Exchange Server 2007的即将生命周期,您的计划是?

    多数人做微软技术,Exchange Server 几乎所有 Microsoft 产品,都具有产品支持生命周期,原厂提供的新增功能. 错误修复.安全修补程序等.产品生命周期通常持续时间 10 年,超过期 ...

  5. SQL动态语句 拼接SQL 并输入输出值

    --动态语句语法 /****************************************************************************************** ...

  6. Linux块设备IO子系统(二) _页高速缓存

    磁盘驱动就是实现磁盘空间和内存空间数据上的交互,在上一篇中我们讨论了内存端的Page Segment Block Sector相关的概念,本文以3.14内核为例,讨论这部分内存是如何被组织管理的.我们 ...

  7. css实现下拉菜单

    实现一个效果不难,难的是使用最少的代码实现一个效果 <!DOCTYPE html> <html lang="en"> <head> <me ...

  8. sql server 重命名列(字段)

    调用系统存储过程sp_rename,直接看代码: EXEC  sp_rename  'myTable.oldName','newName','COLUMN' 如果重命名表,则: EXEC  sp_re ...

  9. 5.Redis常用命令:Hash

    我们可以将Redis中的Hashes类型看成具有String Key和String Value的map容器.所以该类型非常适合于存储值对象的信息.如Username.Password和Age等.如果H ...

  10. EDP转换IC NCS8801S:RGB/LVDS转EDP芯片

    RGB/LVDS-to-eDP Converter1 Features    Embedded-DisplayPort (eDP) Output    2-lane/4-lane eDP @ 1.62 ...