public async Task <IdentityResult> UpdateUserAsync(Guid userId, string username = null, string password = null, string email = null, string phoneNumber = null) { var result = new IdentityResult(); var user = GetUser(userId); if (!string.IsNullOrWhiteSpace(username)) { result = await uM.SetUserNameAsync(user, username); if (!result.Succeeded) { return(result); } } if (!string.IsNullOrWhiteSpace(password)) { result = await uM.RemovePasswordAsync(user); if (!result.Succeeded) { return(result); } result = await uM.AddPasswordAsync(user, password); } if (!string.IsNullOrWhiteSpace(email)) { result = await uM.SetEmailAsync(user, email); if (!result.Succeeded) { return(result); } } if (!string.IsNullOrWhiteSpace(phoneNumber)) { result = await uM.SetPhoneNumberAsync(user, phoneNumber); if (!result.Succeeded) { return(result); } } return(result); }