C# 此登录身份验证代码在ASP.NET核心MVC中的外观如何?

C# 此登录身份验证代码在ASP.NET核心MVC中的外观如何?,c#,session,asp.net-core,asp.net-core-mvc,session-cookies,C#,Session,Asp.net Core,Asp.net Core Mvc,Session Cookies,我需要这段代码片段的帮助,它在ASP.NET MVC中,我想将它传递给ASP.NET CORE MVC,但是我在ASP.NET CORE中找不到类似的东西 public ActionResult Login() { VMLogin vm = new VMLogin(); return View(vm); } [HttpPost] public ActionResult Login(VMLogin vm) { if (ModelState.IsValid) {

我需要这段代码片段的帮助,它在ASP.NET MVC中,我想将它传递给ASP.NET CORE MVC,但是我在ASP.NET CORE中找不到类似的东西

public ActionResult Login()
{
    VMLogin vm = new VMLogin();
    return View(vm);
}

[HttpPost]
public ActionResult Login(VMLogin vm)
{
    if (ModelState.IsValid)
    {
        Usuario usuarioDb = db.Usuarios.Where(u => u.Login == vm.Login).FirstOrDefault();

        if (usuarioDb == null)
        {
            ModelState.AddModelError("", "Não existe usuário com este Login");
            return View(vm);
        }

        bool senhaConfere = Crypto.VerifyHashedPassword(usuarioDb.Senha, vm.Senha);

        if (!senhaConfere)
        {
            ModelState.AddModelError("", "Senha incorreta");
            return View(vm);
        }

        string authId = Guid.NewGuid().ToString();
        Session["AuthID"] = authId;

        var cookie = new HttpCookie("AuthID");
        cookie.Expires = DateTime.Now.AddDays(7);
        cookie.Value = authId;
        Response.Cookies.Add(cookie);

        usuarioDb.AuthId = authId;
        db.SaveChanges();

        return RedirectToAction("Index", "Home");
    }
    return View(vm);
}

public ActionResult Logout()
{
    if (Request.Cookies.AllKeys.Contains("AuthID"))
    {
        String authId = Request.Cookies["AuthID"].Value;
        Usuario usuarioDb = db.Usuarios.Where(c => c.AuthId == authId).FirstOrDefault();
        if (usuarioDb != null)
        {
            usuarioDb.AuthId = "";
            db.SaveChanges();
        }
        Request.Cookies.Remove("AuthID");

        if (Session["AuthID"] != null)
        {
            Session.Remove("AuthID");
        }
    }
    return RedirectToAction("Index", "Home");
}

所以你想让我们把你的ASP.Net MVC代码转换成ASP.Net核心MVC?如果是这样的话,你自己有没有尝试过?你在尝试时遇到了什么问题?如果你坚持自己的身份框架,这些问题将保持不变。MVC 5和Core都在生成相同的前端页面。会话[“AuthID”],Request.Cookies.AllKeys.Contains,Request.Cookies.Remove。。。这些示例在ASP.NET Core中找不到参考。您需要首先了解