public ActionResult Edit(string userId) { using (var entities = new ApplicationDbContext()) { var model = entities.Users.SingleOrDefault(x => x.Id == userId); var viewmodel = new ViewModels.UserViewModels.EditUserViewModel() { Id = model.Id, UserName = model.UserName, Email = model.Email, Role = Management.ActionHandler.GetRolesForUser(User.Identity.GetUserId()).ToString() }; return(View(viewmodel)); } }
public ActionResult Edit(ViewModels.UserViewModels.EditUserViewModel viewmodel) { if (!ModelState.IsValid) { return(View(viewmodel)); } using (var entities = new ApplicationDbContext()) { var model = entities.Users.SingleOrDefault(x => x.Id == viewmodel.Id); model.UserName = viewmodel.UserName; model.Email = viewmodel.Email; if (viewmodel.Role != viewmodel.RoleType.ToString()) // This is a cheeky solution wich dosen't allow for multiple roles. { UserManager.RemoveFromRole(viewmodel.Id, viewmodel.RoleType.ToString()); UserManager.AddToRole(viewmodel.Id, viewmodel.RoleType.ToString()); } } return(View()); }