如何创建C#注销与ASP.NET MVC和Entity Framework

问题描述 投票:0回答:1

我需要创建一个登录系统,我已经能够做到登记部和登录的一部分,但我不能为用户离开会话创建零件(退出系统)。

注:我与SQL命令的库

可能有人帮助我如何做到这一点的一部分?

我现在用的是实体框架和我的数据库第一次做

这里是我的控制器

public class AccountUserController : Controller
{
    private clsContext cnn = new clsContext();

    public ActionResult Index()
    {
        clsUserRepository usu = new clsUserRepository(cnn);
        return View(usu.AccountList());
    }

    public ActionResult Register()
    {
        return View();
    }

    [HttpPost]
    public ActionResult Register(clsAccountUser userObj)
    {
        if (ModelState.IsValid)
        {
            clsUserRepository usu = new clsUserRepository(cnn);
            usu.Register(userObj);
            cnn.SaveChanges();

            ModelState.Clear();
            ViewBag.Message = userObj.usuNome + " " +"Successfully registered!";
        }
        return View();
    }

    public ActionResult Login()
    {
        return View();
    }

    [HttpPost]
    public ActionResult Login(clsAccountUser userObj)
    {
        cclsUserRepository usu = new clsUserRepository(cnn);

        if (usu.Login(userObj) == 2)
        {
            Session["Logged"] = usu.Login(userObj);

            return RedirectToAction("Logged");
        }
        else if(usu.Login(userObj) == 1)
        {
            ViewBag.Message = "Invalid username and password";
        }
        else
        {
            ViewBag.Message = "RE: " + userObj.usuRe + " Invalid" ;
        }

        return View();
    }

    public ActionResult Logged(clsAccountUser usuarioObj)
    {
       if(Convert.ToInt32(Session["Logged"]) != 0)
       {
           return View();
       }
       else 
       {
           return RedirectToAction("Login"); 
       }
    }
  }
}
c# asp.net-mvc entity-framework
1个回答
1
投票

将所有会话变量为NULL,放弃您的会话,并重定向到首页,以建立一个注销功能。

在你的控制器中,创建一个新的动作 -

Public ActionResult Logout()
{
    Session["LoggedData"] = null;
    Session.Abandon();
    return RedirectToAction("Default", "Home");
}
© www.soinside.com 2019 - 2024. All rights reserved.