当我在Asp.Net、Identity
和EntityFramework
中使用IdentityUser
model时,它会在数据库中创建一些标准字段.除以下两个字段外,所有字段都是不言而喻的.
-
NormalizedUsername
-包含用户名的大写值 -
NormalizedEmail
-包含邮箱的大写值
我的疑问是:
- 为什么我们需要这些标准化字段?它在哪里使用?
- 将其持久保存在数据库中的目的是什么?
当我在Asp.Net、Identity
和EntityFramework
中使用IdentityUser
model时,它会在数据库中创建一些标准字段.除以下两个字段外,所有字段都是不言而喻的.
NormalizedUsername
-包含用户名的大写值NormalizedEmail
-包含邮箱的大写值我的疑问是:
据我所知,这两个领域都是出于性能原因.下面的线程Normalization on UserName and Email causes slow performance对其进行了解释,并用于验证UserName
和Email
字段的不区分大小写唯一性.它们被保存在数据库中,以便能够在其上创建索引,从而通过规范化用户名和邮箱sargable进行查找.
这些字段没有其他原因或用法.