public bool Login(Account account) { try { using (var context = new EntityContext()) { var user = context.Account.SingleOrDefault(x => x.userID == account.userID); if (user != null) { user.sessionExpiresAt = account.sessionExpiresAt; user.sessionID = account.sessionID; } else { context.Account.Add(account); } context.SaveChanges(); return true; } } catch(Exception ex) { return false; } }
public ActionResult Login(Account account) { var sessionID = Guid.NewGuid(); var sessionExpiresAt = DateTime.Now.AddHours(5); account.sessionID = sessionID; account.sessionExpiresAt = sessionExpiresAt; var accountService = new AccountService(); if (accountService.Login(account)) { var sessionCookie = new HttpCookie("SESSION_ID") { Value = sessionID.ToString(), Expires = sessionExpiresAt }; Response.Cookies.Add(sessionCookie); var redirectURI = Url.Action("Index"); return Json(new { redirect = redirectURI }); } return new HttpStatusCodeResult((int)HttpStatusCode.InternalServerError); }