我正在尝试为MongoDB创建IUserLoginStore的自定义实现,并且在使用时注意到

UserManager<ApplicationUser>

用方法
 var userResult = await _userManager.CreateAsync(user);

它通过实现
GetUserNameAsync
FindByNameAsync
SetNormalizedUserNameAsync
GetUserIdAsync

我想澄清两个问题:
  • 具有NormalizedUsername和UserName的目的是什么?
    我可以注意到id的唯一区别是normalizedUserName是大写的。
  • 我仅使用我的实现来存储来自外部登录名(Google plus)的用户,有没有一种方法可以省略用户名和NormilizedUserName,因为基本上,我在这三个字段中都使用了电子邮件,我觉得我正在复制数据,对我来说这没有任何意义。

  • 有什么建议吗?

    最佳答案

    1)规范化使人们无法注册仅字母大写不同的用户名。

    2)否-这些字段是基本数据模型的一部分。

    关于asp.net-identity - DotNet Core中的NormalizedUserName VS用户名,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39651299/

    10-17 01:45