public ActionResult Edit(Guid id) { var usuario = new Repositorio <Usuario>(db).Traer(id); var model = new ViewModelAbmUsuario(usuario); return(View(model)); }
public Usuario(ViewModelAbmUsuario vmodel, ApplicationDbContext db) { var user = new ApplicationUser { UserName = vmodel.Email, Email = vmodel.Email }; NickName = vmodel.NickName; Nombre = vmodel.Nombre; ApplicationUser = user; }
public async System.Threading.Tasks.Task <ActionResult> Create(ViewModelAbmUsuario model) { //ModelState.AddModelError("FechaNacimiento", "La fecha no es válida"); var errores = new List <string>(); if (ModelState.IsValid) { var usuario = new Usuario(model, db); //var user = new ApplicationUser { UserName = model.Email, Email = model.Email }; var alluser = new Repositorio <Usuario>(db).TraerTodos(); //var usuario = new Usuario() //{ // ApplicationUser = user, // NickName = model.NickName //}; //var db = new ApplicationDbContext(); // if (model.CategoriaSeleccionada == Guid.Empty) if (alluser.Where(x => x.ApplicationUser.Email == usuario.ApplicationUser.Email).ToList().Count >= 1) { errores.Add("No puede haber dos mails iguales"); model.Errors = errores; return(View(model)); } else { new Repositorio <Usuario>(db).Crear(usuario); UserManager.AddPassword(usuario.ApplicationUser.Id, model.Password); string rol; foreach (Guid item in model.RolesSeleccionadas) { rol = model.RolesDisponibles.Where(x => x.Id == item).Select(x => x.Nombre).FirstOrDefault(); UserManager.AddToRole(usuario.ApplicationUser.Id, rol); } await SignInManager.SignInAsync(usuario.ApplicationUser, isPersistent : false, rememberBrowser : false); return(RedirectToAction("Index", "Usuario")); } //new Repositorio<Actor>(db).Crear(actor); //return RedirectToAction("Index"); } return(View(model)); }
public async System.Threading.Tasks.Task <ActionResult> Edit(ViewModelAbmUsuario model) { if (ModelState.IsValid) { var repo = new Repositorio <Usuario>(db); var usu = repo.Traer(model.Id); List <Guid> ListRolesprevios = usu.ApplicationUser.Roles.Select(x => new Guid(x.RoleId)).ToList(); List <Guid> rolesdelete = ListRolesprevios.Except(model.RolesSeleccionadas).ToList(); usu.Modificar(model, db); repo.Modificar(usu); string rol; //List<Guid> ListRolesprevios = usu.ApplicationUser.Roles.Select(x => new Guid(x.RoleId)).ToList(); //List<Guid> rolesdelete = ListRolesprevios.Except(model.RolesSeleccionadas).ToList(); foreach (Guid item in ListRolesprevios) { rol = model.RolesDisponibles.Where(x => x.Id == item).Select(x => x.Nombre).FirstOrDefault(); UserManager.RemoveFromRole(usu.ApplicationUser.Id, rol); } foreach (Guid item in model.RolesSeleccionadas) { rol = model.RolesDisponibles.Where(x => x.Id == item).Select(x => x.Nombre).FirstOrDefault(); UserManager.AddToRole(usu.ApplicationUser.Id, rol); } await SignInManager.SignInAsync(usu.ApplicationUser, isPersistent : false, rememberBrowser : false); return(RedirectToAction("Index", "Usuario")); // return RedirectToAction("Index"); } return(View(model)); }
public void Modificar(ViewModelAbmUsuario model, ApplicationDbContext db) { Nombre = model.Nombre; NickName = model.NickName; }
public ActionResult Create() { var model = new ViewModelAbmUsuario(); return(View(model)); }