Asp.Net Core Identity 中的德语字符错误
Error with German character in Asp.Net Core Identity
当我尝试使用 UserManager 创建用户时,用户名中有 ä、ö、ü 等字符,我得到了 succeeded=false。我不明白为什么这是个问题。数据库是 nvarchar (255),应该不会有德语字符问题。我可以使用 DbContext 在后记中更改它。我怎样才能改变这种行为?
Usermanager
通过检查是否有任何字符未包含在允许的字符列表中来验证用户名。您可以更改该列表:
services.Configure<IdentityOptions>(options =>
{
// The list of allowed characters in the username used to validate user names
// you can add German characters here
options.User.AllowedUserNameCharacters
= "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._@+";
});
services.AddIdentity<ApplicationUser, IdentityRole>()
.AddEntityFrameworkStores<ApplicationDbContext>()
.AddDefaultTokenProviders();
当我尝试使用 UserManager 创建用户时,用户名中有 ä、ö、ü 等字符,我得到了 succeeded=false。我不明白为什么这是个问题。数据库是 nvarchar (255),应该不会有德语字符问题。我可以使用 DbContext 在后记中更改它。我怎样才能改变这种行为?
Usermanager
通过检查是否有任何字符未包含在允许的字符列表中来验证用户名。您可以更改该列表:
services.Configure<IdentityOptions>(options =>
{
// The list of allowed characters in the username used to validate user names
// you can add German characters here
options.User.AllowedUserNameCharacters
= "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._@+";
});
services.AddIdentity<ApplicationUser, IdentityRole>()
.AddEntityFrameworkStores<ApplicationDbContext>()
.AddDefaultTokenProviders();