Я пытаюсь восстановить пароль с помощью метода UserManager и GenerateChangePhoneNumberTokenAsync.После попытки подтвердить этот токен с помощью ChangePhoneNumberAsync, но каждый раз я получаю сообщение об ошибке с неправильным кодом.
Я пробовал разные условия и каждый раз получал одну и ту же ошибку.
Генерация токена
var token = await _userManager.GenerateChangePhoneNumberTokenAsync(user, model.Username);
Подтверждающий токен
var verified = await _userManager.ChangePhoneNumberAsync(user, model.Phone, model.Token);
Startup.cs
services.AddIdentity<ApplicationUser, IdentityRole>(config =>
{
config.SignIn.RequireConfirmedEmail = true;
config.SignIn.RequireConfirmedPhoneNumber = true;
config.Tokens.ChangePhoneNumberTokenProvider = "Phone";
})
Телефон и имя пользователя совпадают.
var user = new ApplicationUser
{
Email = $"{_templateCustomerEmail}{(_context.Users.Count() + 1)}@{_appSettings.Domain}",
DateSignUp = DateTime.UtcNow,
FullName = model.FullName,
Id = Guid.NewGuid().ToString(),
PhoneNumber = model.Username,
EmailConfirmed = true,
PhoneNumberConfirmed = false,
UserName = model.Username
};
Я ожидал, что очень легко настроитьэти вещи.К сожалению, столкнулся с дурацкой проблемой.Возможно, проблема в именах методов или что-то еще.