Identity 3.1 - 更改电子邮件时用户名被更改,可以避免这种情况吗?
Identity 3.1 - when changing email the user name gets changed, can this be avoided?
默认 ASP .NET Core 3.1 Identity 将电子邮件和用户名几乎混合在一起。我在 Login 和 Registration 页面中将它们分开,方法是将它们生成到我的项目中并手动修改它们。但是 Change email 将用户名设置为新电子邮件。我可以使用一些全局标志来修复这种奇怪的行为吗?如果不是,我需要手动生成和修改哪些页面才能正确?
您所描述的行为并未内置于 ASP.NET Core Identity 中,而是内置于默认 Identity UI 中,即提供用于管理身份的默认页面的页面。身份系统本身在这里是完全透明的,始终分别处理用户名和电子邮件地址。
然而,这也意味着您无法神奇地更改某些身份设置以正确拆分它。相反,您必须为此编辑 UI。除非我遗漏了什么,默认身份 UI 的以下页面同时设置了用户名和电子邮件地址:
Register.cshtml
: 当用户注册时。
ExternalLogin.cshtml
:当用户通过外部提供商注册时。
ConfirmEmailChange.cshtml
:当用户通过更改令牌确认电子邮件更改时。
默认 ASP .NET Core 3.1 Identity 将电子邮件和用户名几乎混合在一起。我在 Login 和 Registration 页面中将它们分开,方法是将它们生成到我的项目中并手动修改它们。但是 Change email 将用户名设置为新电子邮件。我可以使用一些全局标志来修复这种奇怪的行为吗?如果不是,我需要手动生成和修改哪些页面才能正确?
您所描述的行为并未内置于 ASP.NET Core Identity 中,而是内置于默认 Identity UI 中,即提供用于管理身份的默认页面的页面。身份系统本身在这里是完全透明的,始终分别处理用户名和电子邮件地址。
然而,这也意味着您无法神奇地更改某些身份设置以正确拆分它。相反,您必须为此编辑 UI。除非我遗漏了什么,默认身份 UI 的以下页面同时设置了用户名和电子邮件地址:
Register.cshtml
: 当用户注册时。ExternalLogin.cshtml
:当用户通过外部提供商注册时。ConfirmEmailChange.cshtml
:当用户通过更改令牌确认电子邮件更改时。