Ejemplo n.º 1
0
        public ActionResult EditarPost(string id, Usuario usuario)
        {
            if (!LoginController.validaUsuario(Session))
                return RedirectToAction("Index", "Home");
            if (!LoginController.validaRol(Session))
                return RedirectToAction("Index", "Home");

            ViewBag.Rol = new SelectList((from s in db.Rol
                                          where s.Estado == 1
                                          select new
                                          {
                                              s.IdRol,
                                              s.Nombre
                                          }
                                            ), "IdRol", "Nombre");
            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }

            ModelState.Remove("Usuario1");
            usuario.Usuario1= Session["UsuarioActual"].ToString();
            Usuario usuarioToUpdate = db.Usuario.Find(id);

            if (ModelState.IsValid) {
                if (TryUpdateModel(usuarioToUpdate, "",
                   new string[] { "Contraseña", "IdRol", "Estado", "Usuario1" }))
                {
                    usuarioToUpdate.Contraseña = Encriptar(usuario.Contraseña);
                    try
                    {
                        db.SaveChanges();

                        return RedirectToAction("Index");
                    }
                    catch (RetryLimitExceededException /* dex */)
                    {
                        ModelState.AddModelError("", "Imposible guardar los cambios. Intentelo de nuevo, si el problema persiste, contacte el administrador del sistema.");
                    }
                }
            }
            return View(usuarioToUpdate);
        }
Ejemplo n.º 2
0
        public ActionResult Registrar(Usuario usuario)
        {
            if (!LoginController.validaUsuario(Session))
                return RedirectToAction("Index", "Home");
            if (!LoginController.validaRol(Session))
                return RedirectToAction("Index", "Home");

            ViewBag.Rol = new SelectList((from s in db.Rol
                                          where s.Estado == 1
                                          select new
                                          {
                                              s.IdRol,
                                              s.Nombre
                                          }
                                           ), "IdRol", "Nombre");
            try
            {
                ModelState.Remove("Usuario1");
                usuario.Contraseña = Encriptar(usuario.Contraseña);
                usuario.Usuario1 = Session["UsuarioActual"].ToString();

                Usuario validaUsuario = db.Usuario.Find(usuario.IdUsuario);

                if ( validaUsuario == null)
                {
                    if (ModelState.IsValid)
                    {
                        db.Usuario.Add(usuario);
                        db.SaveChanges();
                        return RedirectToAction("Index");
                    }
                }
            }
            catch (RetryLimitExceededException /* dex */)
            {
                ModelState.AddModelError("", "Imposible guardar cambios. Intentelo de nuevo, y si el problema persiste contacte el administrador del sistema.");
            }
            return View(usuario);
        }