在 .NET 6 中使用会话(Session)可以通过以下步骤进行:

  1. Startup.cs 文件中的 ConfigureServices 方法中,添加以下代码以启用会话:
services.AddDistributedMemoryCache(); // 添加分布式内存缓存
services.AddSession(options =>
{
    options.IdleTimeout = TimeSpan.FromMinutes(30); // 设置会话超时时间
    options.Cookie.HttpOnly = true; // 设置会话 Cookie 为 HttpOnly,以增加安全性
    options.Cookie.IsEssential = true; // 设置会话 Cookie 为必需项
});
  1. Startup.cs 文件的 Configure 方法中,添加以下代码以启用会话中间件:
app.UseSession();
  1. 在需要使用会话的控制器或视图中,通过注入 ISession 接口来访问会话对象。例如,在控制器中:
private readonly IHttpContextAccessor _httpContextAccessor;
private ISession _session => _httpContextAccessor.HttpContext.Session;

public HomeController(IHttpContextAccessor httpContextAccessor)
{
    _httpContextAccessor = httpContextAccessor;
}

public IActionResult Index()
{
    _session.SetString("UserName", "John"); // 设置会话数据
    string userName = _session.GetString("UserName"); // 获取会话数据

    return View();
}

注意:为了使用会话,需要确保已将 Microsoft.AspNetCore.Session 包添加到项目的依赖项中。

以上步骤将启用会话,并允许在控制器或视图中使用会话对象来存储和检索数据

net6 使用Session

原文地址: https://www.cveoy.top/t/topic/h1Tq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录