1.使用Session(进程内)

在startup中添加方法 services.AddSession  app.UseSession()

 services.AddDistributedMemoryCache();

2.使用Redis存储Session(单节点)

services.AddDistributedRedisCache(option => {

 option.Configuration = “127.0.0.1:6379”;
 option.InstanceName = 30;
});

3.使用Redis分布式存储 (分布式)

nuget:     Microsoft.AspNetCore.DataProtection

services.AddDataProtection()
.SetApplicationName(Configuration["Redis:Session_application_name"])
.PersistKeysToRedis(ConnectionMultiplexer.Connect(redisconfig), "DataProtection-Keys");

示例:

使用方式: 

 HttpContext.Session.SetString("key", “value”);  //设置

HttpContext.Session.GetString("key");//获取session

4.使用Sqlserver数据库存储Session

services.AddDistributedSqlServerCache

 

参考:

ASP.NET Core中间件实现分布式 Session: https://www.cnblogs.com/vipyoumay/p/7771237.html

 

posted on 2018-04-08 09:31  余昭(Ray)  阅读(1548)  评论(0编辑  收藏  举报