Если вы используете Asp. Net Идентификация с IS4, то обновление имени пользователя / адреса электронной почты будет выполняться с помощью методов Asp. Net Идентификация. В частности, это делается через UserManager с использованием двух методов: SetUserNameAsyn c () и SetEmailAsyn c (). Предполагая, что у вас уже есть экземпляр UserManager (обычно используется DI), код будет выглядеть примерно так:
// First get the user, in this example, by ID but also you can use FindByEmailAsync()
var identityUser = await _userManager.FindByIdAsync(id.ToString());
// Change the Username field
var usernameResult = await _userManager.SetUserNameAsync(identityUser, user.Email);
// Change the email field
var emailResult = await _userManager.SetEmailAsync(identityUser, user.Email);
Затем вы можете проверить логические значения usernameResult.Succeeded и emailResult.Succeeded для результата операций. .
Вы можете реализовать это как хотите. В моем случае я создал отдельную конечную точку API «Управление пользователями» в экземпляре IdentityServer4 (который также защищен самим IS4), который выполняет этот код. Если вас интересует аналогичная опция, посмотрите в документации по IS4 о создании собственной конечной точки: http://docs.identityserver.io/en/latest/topics/add_apis.html