【发布时间】:2022-02-17 16:15:14
【问题描述】:
我的项目在 .NET framework 4.8 上运行,然后我将其迁移到 .NET 6。每当我需要从 Session 访问特定属性时,我都会使用:
public static bool SIMInside
{
get
{
return (bool)HttpContext.Current.Session["SIMInside"];
}
set
{
HttpContext.Current.Session["SIMInside"] = value;
}
}
如何在 Asp.Net core 6 中实现这一点?我知道我需要在Program.cs 中添加builder.Services.AddHttpContextAccessor();,然后注入到所需的位置。
我试过但没有用:
public static bool SIMInside
{
get
{
return _contextAccessor.HttpContext.Session.Get("SIMInside");
}
set
{
_contextAccessor.HttpContext.Session.Set("SIMInside", value);
}
}
在这种情况下,Get 返回byte[] 数组或Set 也需要byte[] 数组
【问题讨论】:
-
默认方法接受一个序列化对象并返回一个序列化对象。如果您想使用其他方法,还有另外两种方法:
SetString、SetInt32
标签: c# session .net-6.0 asp.net-core-6.0