1、Session文档介绍
- 毋庸置疑学习.Net core最好的方法之一就是学习微软.Net core的官方文档;;
- .Net core Session的官方文档
- .Net core Session Github源码
2、Session简单应用
2.1、在Startup类的ConfigureServices方法中添加
因为Session的服务端存储需要缓存,所以需要引入.Net core的缓存DistributedMemoryCache;
2.2、在Startup类的Configure方法中添加
2.3、使用(存储和获取)
HttpContext.Session.TryGetValue(<span style="color: #800000;">"<span style="color: #800000;">LoginId<span style="color: #800000;">",<span style="color: #0000ff;">out <span style="color: #0000ff;">byte<span style="color: #000000;">[] byteLoginId);
<span style="color: #0000ff;">var loginId = System.Text.Encoding.Default.GetString(byteLoginId); // LoginId="666";
3、源码分析图
4、源码分析
4.1、程序加载
4.1.1、在ConfigureServices中添加分布式缓存,services.AddDistributedMemoryCache();
微软官方建议使用AddDistributedMemoryCache,当然也可以使用AddDistributedRedisCache、AddDistributedSqlServerCache或者自定义缓存也是可以的;
如果是分布式系统或者SSO单点登录,建议使用分布式的缓存AddDistributedRedisCache,AddDistributedSqlServerCache;