У меня есть класс, который создает пользователь с помощью функции поиска по электронной почте и убедившись, что он не существует, и это создает пользователь:Изменения ASP.NET Идентичность Пароль
public async Task EnsureSeedDataAsync()
{
if (await _userManager.FindByEmailAsync("[email protected]") == null)
{
// Add the user.
var newUser = new CRAMSUser()
{
UserName = "test",
Email = "[email protected]"
};
await _userManager.CreateAsync(newUser, "[email protected]!");
}
}
Я пытаюсь создать еще один класс для измените пароль с помощью того же метода, но я смущен тем, как создать объект currentUser, который будет передан в вызовы RemovePassword и AddPassword. Это то, что я до сих пор:
public async Task ChangePassword()
{
if (await _userManager.FindByEmailAsync("[email protected]") != null)
{
_userManager.RemovePasswordAsync(currentUser);
_userManager.AddPasswordAsync(currentUser, "newPassword");
}
}
Может кто-то пожалуйста направить меня в нужном направлении, как я новичок в этом и не знаю, как передать объект CurrentUser, который содержит электронную почту, которая в настоящее время поиск.
Выполнение этой операции в двух операциях не является хорошим, если вторая операция не работает, пользователь не имеет пароля – Tseng
Да, использование метода «ChangePasswordAsync», вероятно, лучше, но я понял, что это выходит за рамки исходного вопроса. – jmoerdyk