Имя пользователя уже принимается, когда на самом деле это не ASP.NET CoreC#

Место общения программистов C#
Ответить
Anonymous
 Имя пользователя уже принимается, когда на самом деле это не ASP.NET Core

Сообщение Anonymous »

фон
Этот вопрос является продолжением моего предыдущего вопроса. В этом вопросе я столкнулся с проблемой, когда я не мог войти в систему к существующему пользователю. Я решил это благодаря MD Фариду Уддину Кирону. Я изменил свою строку подключения в appsettings.json . Это решило мою проблему, но теперь у меня есть другая проблема.
Вопрос/Проблема
Я сталкиваюсь с необычной проблемой, Когда я пытаюсь создать новую учетную запись, я получаю исключение, которая говорит, что имя пользователя уже существует. У меня есть только один пользователь с уникальным именем пользователя (адрес электронной почты). Я не могу понять, почему это происходит. />

Код: Выделить всё

public async Task OnPostAsync(string returnUrl = null)
{
returnUrl ??= Url.Content("~/");

ExternalLogins = (await _signInManager.GetExternalAuthenticationSchemesAsync()).ToList();

if (ModelState.IsValid)
{
var user = new ApplicationUser
{
UserName = Input.Email,
Email = Input.Email,
FirstName = Input.FirstName,
LastName = Input.LastName
};

var result = await _userManager.CreateAsync(user, Input.Password);

if (result.Succeeded)
{
_logger.LogInformation("User created a new account with password.");

var code = await _userManager.GenerateEmailConfirmationTokenAsync(user);
code = WebEncoders.Base64UrlEncode(Encoding.UTF8.GetBytes(code));
var callbackUrl = Url.Page("/Account/ConfirmEmail",
pageHandler: null,
values: new { area = "Identity", userId = user.Id, code = code, returnUrl = returnUrl },
protocol: Request.Scheme);

await _emailSender.SendEmailAsync(Input.Email, "Confirm your email",
$"Please confirm your account by [url={HtmlEncoder.Default.Encode(callbackUrl)}]clicking here[/url].");

if (_userManager.Options.SignIn.RequireConfirmedAccount)
{
return RedirectToPage("RegisterConfirmation", new { email = Input.Email, returnUrl = returnUrl });
}
else
{
await _signInManager.SignInAsync(user, isPersistent: false);
return LocalRedirect(returnUrl);
}
}

foreach (var error in result.Errors)
{
ModelState.AddModelError(string.Empty, error.Description);
}
}

// If we got this far, something failed, redisplay form
return Page();
}
createAsync

Код: Выделить всё

//
// Summary:
//     Creates the specified user in the backing store with given password, as an asynchronous operation.
//
// Parameters:
//   user:
//     The user to create.
//
//   password:
//     The password for the user to hash and store.
//
// Returns:
//     The System.Threading.Tasks.Task that represents the asynchronous operation, containing
//     the Microsoft.AspNetCore.Identity.IdentityResult of the operation.
public virtual Task CreateAsync(TUser user);

[AsyncStateMachine(typeof(UserManager.d__78))]
public virtual Task CreateAsync(TUser user, string password);
Если вам нужно больше кода, не бойтесь спрашивать об этом.
Спасибо за ваше время.

Подробнее здесь: https://stackoverflow.com/questions/757 ... p-net-core
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»