public async Task <ActionResult> Index(IEnumerable <string> RoleName, string userid) { try { if (ModelState.IsValid) { IEnumerable <string> rolenames = RoleName ?? new List <string>(); IEnumerable <string> selectedRoleNames = rolenames; // IEnumerable<string> unselectedRoleNAmes = Helper.GetRoles().Select(a => a.Name).Except(rolenames); foreach (var role in selectedRoleNames.ToList()) { if (!UserManagerApp.IsInRole(userid, role)) { await UserManagerApp.AddToRoleAsync(userid, role); // Success("User added to role" + role, true); } } //foreach (var srole in unselectedRoleNAmes.ToList()) //{ // if (UserManagerApp.IsInRole(userid, srole)) // { // await UserManagerApp.RemoveFromRolesAsync(userid, srole); // // Success("User removed from role " + srole, true); // } //} return(RedirectToAction("Index")); } else { return(View()); } } catch (Exception) { //Danger("Somethings was wrong!", true); ModelState.AddModelError("", "Something was wrong"); return(View()); } }