public ActionResult Editar(Rol modelo, string[] permisosIds) { if (permisosIds == null || permisosIds.Length == 0) { ModelState.AddModelError("", "Debe seleccionar al menos un permiso"); } modelo.Permisos = new List <RolPermiso>(); for (int i = 0; i < permisosIds.Length; i++) { RolPermiso Permiso = new RolPermiso(); Permiso.PermisoId = permisosIds[i]; modelo.Permisos.Add(Permiso); } if (ModelState.IsValid) { string strMensaje = new RolBL().Guardar(modelo); if (strMensaje.Equals("OK")) { TempData["Rol-Success"] = strMensaje; return(RedirectToAction("Index")); } else { ModelState.AddModelError("", strMensaje); } } modelo.PermisoIds = Permisos(); return(View(modelo)); }