public async Task<ActionResult> RegisterUserByManager(RegisterUserByManagerViewModel model) { if (model == null || !this.ModelState.IsValid) { return this.RedirectToAction("RegisterUserByManager"); } var user = new User { UserName = model.UserName, Email = model.Email }; var result = await this.UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { var store = new UserStore<User>(this.data); var manager = new UserManager<User>(store); if (!string.IsNullOrWhiteSpace(model.UserRoleId)) { var roleName = this.data .Roles .Where(x => x.Id == model.UserRoleId) .ToList() .First() .Name; manager.AddToRole(user.Id, roleName); this.data.SaveChanges(); this.TempData.Add(ModelConstants.Success, "Потребителят с име " + model.UserName + " и роля " + roleName + " е добавен успешно."); return this.RedirectToAction("Index"); } this.data.SaveChanges(); this.TempData.Add(ModelConstants.Success, "Потребителят с име " + model.UserName + " е добавен успешно."); return this.RedirectToAction("Index"); } this.AddErrors(result); model.UserRoles = this.GetRoles(); // If we got this far, something failed, redisplay form return this.View(model); }
public ActionResult RegisterUserByManager() { var model = new RegisterUserByManagerViewModel { UserRoles = this.GetRoles(), }; return this.View(model); }