ASP.NET Core 儲存Session的方法
阿新 • • 發佈:2018-12-05
原文地址:https://www.cnblogs.com/wtujvk/p/8743035.html
ASP.NET Core 儲存Session的方法:a.記憶體方式,b.Redis,c.Redis叢集,d.SqlServer
1.使用Session(程序內)
在startup中新增方法
services.AddDistributedMemoryCache();
services.AddSession ();
.....
app.UseSession();
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