Мне нужно установить мой логин для использования имени пользователя вместо адреса электронной почты, как его изменить?
Как войти в систему с именем "UserName" вместо "Email" в MVC Identity?
Ответ 1
Фактически он использует адрес электронной почты в качестве имени пользователя, поэтому в таблице ASPNetUsers вы увидите как имя пользователя, так и адрес электронной почты с адресом электронной почты.
Перейдите в AccountController, ищите метод Register (POST).
Измените это:
var user = new ApplicationUser { UserName = model.Email, Email = model.Email};
:
var user = new ApplicationUser
{
UserName = model.UserName,
Email = model.Email
};
Затем зайдите в Login.cshtml и измените все поля соответствующей электронной почты на имя пользователя.
Наконец, перейдите в метод Login (POST) в AccountController и измените model.Email на model.UserName.
var result = await SignInManager.PasswordSignInAsync(model.UserName, model.Password,
model.RememberMe, shouldLockout: false);
Вам также необходимо внести изменения в AccountViewModels.cs, чтобы представить новое свойство UserName.