C# 身份验证服务。ASP.Net核心中的HttpContext.Current.Session
我的C# 身份验证服务。ASP.Net核心中的HttpContext.Current.Session,c#,asp.net,asp.net-mvc,asp.net-core,C#,Asp.net,Asp.net Mvc,Asp.net Core,我的LoggedUser属性有问题,该属性是在.Net Framework(standart)时代创建的。现在我想修复LoggedUser,但要使用Asp.Net核心。我得到的错误是我不能使用HttpContext.Current.Sessionit underlineCurrent。谁能帮我解决这个问题并保存相同的代码结构。谢谢大家! public class AuthenticationService { public static bool IsLogged
LoggedUser
属性有问题,该属性是在.Net Framework(standart)时代创建的。现在我想修复LoggedUser
,但要使用Asp.Net核心
。我得到的错误是我不能使用HttpContext.Current.Session
it underlineCurrent
。谁能帮我解决这个问题并保存相同的代码结构。谢谢大家!
public class AuthenticationService
{
public static bool IsLogged
{
get
{
return LoggedUser != null;
}
}
public static User LoggedUser
{
get
{
return (User)HttpContext.Current.Session[typeof(AuthenticationService).Name];
}
private set
{
HttpContext.Current.Session[typeof(AuthenticationService).Name] = value;
}
}
public static void AuthenticateUser(string username, string password)
{
UserRepository userRepo = new UserRepository();
User user = userRepo.GetAll(u => u.Username == username && u.Password == password).FirstOrDefault();
if (user != null)
LoggedUser = user;
}
public static void LogOut()
{
LoggedUser = null;
}
}
这回答了你的问题吗?对不起,我想不出来。我是这方面的新手。不知道如何正确操作。请检查/粘贴startup.cs文件,确保已启用会话,并添加HttpContext服务?在
Startup.cs
中,我添加了这个`services.AddHttpContextAccessor()`但是仍然不知道如何创建它并在AuthService中保存相同的结构……您了解依赖项注入是如何工作的吗?