Ejemplo n.º 1
0
        public ActionResult Login(Login login, [FromServices] dbContext db)
        {
            if (ModelState.IsValid)
            {
                try {
                    Users user = db.Users.First(u => u.Email == login.Email && u.Pwd == login.Password);

                    UserLogins ul = login.ToUserLogin();
                    ul.UserAgent = Request.Headers["User-Agent"];
                    ul.IpAddress = HttpContext.Connection.RemoteIpAddress.ToString();
                    ul.Id        = db.NextUserLoginsId();
                    ul.MemberId  = user.Id;
                    db.UserLogins.Add(ul);
                    db.SaveChanges();

                    _initUserSession(user.Id, user.FullName);

                    return(Redirect("/accounts/my"));
                } catch (InvalidOperationException) {
                    ModelState.AddModelError("Password", "Login failed!");
                }
            }

            return(View("Login"));
        }