public virtual async Task <ProfileDto> UpdateAsync(UpdateProfileDto input) { var user = await UserManager.GetByIdAsync(CurrentUser.GetId()); if (await SettingProvider.IsTrueAsync(IdentitySettingNames.User.IsUserNameUpdateEnabled)) { (await UserManager.SetUserNameAsync(user, input.UserName)).CheckErrors(); } if (await SettingProvider.IsTrueAsync(IdentitySettingNames.User.IsEmailUpdateEnabled)) { (await UserManager.SetEmailAsync(user, input.Email)).CheckErrors(); } (await UserManager.SetPhoneNumberAsync(user, input.PhoneNumber)).CheckErrors(); user.Name = input.Name; user.Surname = input.Surname; input.MapExtraPropertiesTo(user); (await UserManager.UpdateAsync(user)).CheckErrors(); await CurrentUnitOfWork.SaveChangesAsync(); return(ObjectMapper.Map <IdentityUser, ProfileDto>(user)); }
public virtual async Task <ProfileDto> UpdateAsync(UpdateProfileDto input) { await IdentityOptions.SetAsync(); var user = await UserManager.GetByIdAsync(CurrentUser.GetId()); if (!string.Equals(user.UserName, input.UserName, StringComparison.InvariantCultureIgnoreCase)) { if (await SettingProvider.IsTrueAsync(IdentitySettingNames.User.IsUserNameUpdateEnabled)) { (await UserManager.SetUserNameAsync(user, input.UserName)).CheckErrors(); } } if (!string.Equals(user.Email, input.Email, StringComparison.InvariantCultureIgnoreCase)) { if (await SettingProvider.IsTrueAsync(IdentitySettingNames.User.IsEmailUpdateEnabled)) { (await UserManager.SetEmailAsync(user, input.Email)).CheckErrors(); } } if (!string.Equals(user.PhoneNumber, input.PhoneNumber, StringComparison.InvariantCultureIgnoreCase)) { (await UserManager.SetPhoneNumberAsync(user, input.PhoneNumber)).CheckErrors(); } user.Name = input.Name; user.Surname = input.Surname; user.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp); input.MapExtraPropertiesTo(user); (await UserManager.UpdateAsync(user)).CheckErrors(); await CurrentUnitOfWork.SaveChangesAsync(); return(ObjectMapper.Map <IdentityUser, ProfileDto>(user)); }