public ActionResult Edit([Bind(Include = "Id,FirstName,LastName,Email,PhoneNumber")] ApplicationUser applicationUser, string roles) { if (ModelState.IsValid) { var currentrole = rolesHelper.ListUserRoles(applicationUser.Id); if (User.IsInRole("Admin")) { foreach (var role in currentrole) { rolesHelper.RemoveUserFromRole(applicationUser.Id, role); } if (!string.IsNullOrEmpty(roles)) { rolesHelper.AddUsertoRole(applicationUser.Id, roles); } } applicationUser.UserName = applicationUser.Email; db.Users.Attach(applicationUser); db.Entry(applicationUser).Property(x => x.FirstName).IsModified = true; db.Entry(applicationUser).Property(x => x.LastName).IsModified = true; db.Entry(applicationUser).Property(x => x.Email).IsModified = true; db.Entry(applicationUser).Property(x => x.DisplayName).IsModified = true; db.Entry(applicationUser).Property(x => x.UserName).IsModified = true; db.Entry(applicationUser).Property(x => x.PhoneNumber).IsModified = true; db.SaveChanges(); return(RedirectToAction("Index", "Home")); } return(View(applicationUser)); }