Asp.net SignInManager.PasswordSignInAsync与标识同步

Asp.net SignInManager.PasswordSignInAsync与标识同步,asp.net,asp.net-mvc,asp.net-identity,Asp.net,Asp.net Mvc,Asp.net Identity,我当时正在致力于实现Identity,遇到了一个有趣的问题。默认实现使用使用SignInManager.PasswordSignInAsync方法的登录方法。但是,PasswordSignInAsync的实现需要用户名参数。为什么是这样,还是我不明白发生了什么?谢谢。默认情况下,注册操作会将电子邮件设置为电子邮件帐户和用户帐户的用户名,这样,当您登录时,当询问用户名时,您将发布一个电子邮件帐户 系统也准备好了,因此您可以很容易地改变这种行为,只需允许用户名和电子邮件在帐户注册上具有不同的值,并且

我当时正在致力于实现Identity,遇到了一个有趣的问题。默认实现使用使用SignInManager.PasswordSignInAsync方法的登录方法。但是,PasswordSignInAsync的实现需要用户名参数。为什么是这样,还是我不明白发生了什么?谢谢。

默认情况下,注册操作会将电子邮件设置为电子邮件帐户和用户帐户的用户名,这样,当您登录时,当询问用户名时,您将发布一个电子邮件帐户


系统也准备好了,因此您可以很容易地改变这种行为,只需允许用户名和电子邮件在帐户注册上具有不同的值,并且可以通过用户名/密码登录。

有什么混淆?逻辑上,您需要用户提供用户名和密码才能登录。用户也可以使用Google或Facebook登录,在这种情况下,登录将没有密码,因此没有名称。混淆之处在于AccountController中的默认代码正在发送电子邮件,但实现需要用户名,而不一定是电子邮件。