public ActionResult LoginVerify(FormCollection form) { string ip = getIP(); string pk_comprador = Convert.ToString(form["pk_comprador"]); string password = Convert.ToString(form["password"]); using (db_carrito_apl_Entities db = new db_carrito_apl_Entities()) { var query = from c in db.compradores where c.pk_comprador == pk_comprador && c.password == password select c; if (query.Count() != 1) { return(RedirectToRoute("Default", new { controller = "Login", action = "Index", error = "La contraseña o la cédula no es válida." })); } else { foreach (var c in query) { System.Diagnostics.Debug.WriteLine("Logeado: " + c.pk_comprador); Session["id"] = c.pk_comprador; Session["nombres"] = c.nombres; Session["apellidos"] = c.apellidos; } } } using (db_carrito_apl_Entities db2 = new db_carrito_apl_Entities()) { if (ModelState.IsValid && Session["id"] != null) { sesiones sesion = new sesiones(); sesion.ip = ip; sesion.fk_comprador = pk_comprador; sesion.fecha_login = DateTime.Now; db2.sesiones.Add(sesion); db2.SaveChanges(); Session["id_sesion"] = sesion.pk_sesiones; } } return(RedirectToRoute("Default", new { controller = "Home", action = "Index" })); }
public ActionResult LogOut() { db_carrito_apl_Entities db = new db_carrito_apl_Entities(); FormsAuthentication.SignOut(); Session.Abandon(); if (ModelState.IsValid) { sesiones sesion = db.sesiones.Find(Session["id_sesion"]); if (sesion != null) { sesion.fecha_logout = DateTime.Now; db.Entry(sesion).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } else { System.Diagnostics.Debug.WriteLine("Se intenta cerrar una sesion inexistente. Login->LogOut"); } } return(RedirectToAction("index", "login")); }