Как поддержать Unicode для UserName? - PullRequest
0 голосов
/ 24 октября 2018

Я добавляю функцию регистрации, которая нуждается в поддержке юникода для UserName (китайский сейчас).Когда я ввожу китайский UserName, появляется окно с сообщением об ошибке:

Неверное имя пользователя xxxxx, может содержать только буквы или цифры.

Я ищуисходный код и не найти никакого валидатора или фильтра для этого.Я проверяю схему SQL Server, тип UserName - nvarchar(32), который поддерживает Unicode.

Может кто-нибудь сказать, как добавить поддержку Unicode для этого поля?Спасибо.

1 Ответ

0 голосов
/ 24 октября 2018

Это стандартное поведение ASP.NET (Core) Identity.

Чтобы отключить проверку, вы можете сделать следующее.

ASP.NET Core Identity

IdentityRegistrar.cs :

return services.AddAbpIdentity<Tenant, User, Role>(options =>
{
    options.User.AllowedUserNameCharacters = null;
})

ASP.NET Identity (MVC 5)

UserManager.cs :

(UserValidator as Microsoft.AspNet.Identity.UserValidator<User, long>)
    .AllowOnlyAlphanumericUserNames = false;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...