net Core中如何激活session缓存描述
在 .NET Core 中,要激活 Session 缓存,需要进行以下步骤:
-
在 Startup.cs 文件中,添加以下代码:
public void ConfigureServices(IServiceCollection services) { services.AddSession(options => { options.IdleTimeout = TimeSpan.FromMinutes(30); options.Cookie.HttpOnly = true; }); services.AddMvc(); } public void Configure(IApplicationBuilder app, IHostingEnvironment env) { app.UseSession(); app.UseMvc(); } -
在需要使用 Session 的控制器中,添加以下代码:
public class HomeController : Controller { public IActionResult Index() { HttpContext.Session.SetString("Name", "John"); return View(); } }这里的 HttpContext.Session 就是 Session 对象,可以使用 SetString、GetString 等方法来存储和读取数据。
需要注意的是,Session 缓存需要使用某个具体的存储方式来存储数据,可以使用内存、Redis、SQL Server 等多种存储方式。在 ConfigureServices 方法中,可以通过 options 配置来指定存储方式。例如,对于 Redis 存储方式,可以添加以下代码:
```csharp
services.AddDistributedRedisCache(options =>
{
options.Configuration = "localhost";
options.InstanceName = "SampleInstance";
});
services.AddSession(options =>
{
options.IdleTimeout = TimeSpan.FromMinutes(30);
options.Cookie.HttpOnly = true;
options.Cookie.IsEssential = true;
options.Cookie.Name = ".MyApp.Session";
options.SessionStore = new RedisCacheSessionStore(services.BuildServiceProvider());
});
```
原文地址: https://www.cveoy.top/t/topic/bf4z 著作权归作者所有。请勿转载和采集!