Asp.net mvc MVC标识2-帐户确认电子邮件

Asp.net mvc MVC标识2-帐户确认电子邮件,asp.net-mvc,asp.net-identity,Asp.net Mvc,Asp.net Identity,我在一个新的MVC解决方案中使用identity 2进行注册和登录,我对注册进行了编码,以便在有人注册时发送确认电子邮件,但我仍然能够在不验证的情况下登录(单击电子邮件中的验证链接) 我使用了通过Nuget安装Identity 2时提供的标准代码。 我也用过这个例子,得到了同样的结果 我误解了吗?我想,在按照其他网站进行验证之前,我无法登录 登录过程本身并不强制确认电子邮件。似乎示例项目不关心登录目的,但它们在允许重置密码之前进行了检查。因此,如果您愿意,您可以修改其中的代码以添加到登录操作中。

我在一个新的MVC解决方案中使用identity 2进行注册和登录,我对注册进行了编码,以便在有人注册时发送确认电子邮件,但我仍然能够在不验证的情况下登录(单击电子邮件中的验证链接)

我使用了通过Nuget安装Identity 2时提供的标准代码。 我也用过这个例子,得到了同样的结果


我误解了吗?我想,在按照其他网站进行验证之前,我无法登录

登录过程本身并不强制确认电子邮件。似乎示例项目不关心登录目的,但它们在允许重置密码之前进行了检查。因此,如果您愿意,您可以修改其中的代码以添加到登录操作中。基本上,您只需执行以下操作:

if (!(await UserManager.IsEmailConfirmedAsync(user.Id)))
{
    ModelState.AddModelError("", "E-mail address has not been confirmed");
}

if (ModelState.IsValid)
{
    ...

登录过程本身并不强制确认电子邮件。似乎示例项目不关心登录目的,但它们在允许重置密码之前进行了检查。因此,如果您愿意,您可以修改其中的代码以添加到登录操作中。基本上,您只需执行以下操作:

if (!(await UserManager.IsEmailConfirmedAsync(user.Id)))
{
    ModelState.AddModelError("", "E-mail address has not been confirmed");
}

if (ModelState.IsValid)
{
    ...

登录过程本身并不强制确认电子邮件。似乎示例项目不关心登录目的,但它们在允许重置密码之前进行了检查。因此,如果您愿意,您可以修改其中的代码以添加到登录操作中。基本上,您只需执行以下操作:

if (!(await UserManager.IsEmailConfirmedAsync(user.Id)))
{
    ModelState.AddModelError("", "E-mail address has not been confirmed");
}

if (ModelState.IsValid)
{
    ...

登录过程本身并不强制确认电子邮件。似乎示例项目不关心登录目的,但它们在允许重置密码之前进行了检查。因此,如果您愿意,您可以修改其中的代码以添加到登录操作中。基本上,您只需执行以下操作:

if (!(await UserManager.IsEmailConfirmedAsync(user.Id)))
{
    ModelState.AddModelError("", "E-mail address has not been confirmed");
}

if (ModelState.IsValid)
{
    ...

谢谢克里斯,这正是我需要的。我确实在上面添加了这一行:var user=await UserManager.FindByNameAsync(model.Email);因为我现在只有电子邮件。我已经编辑了你的帖子来添加这一行以帮助其他人。谢谢Hanks Chris这正是我需要的。我确实在上面添加了这一行:var user=await UserManager.FindByNameAsync(model.Email);因为我现在只有电子邮件。我已经编辑了你的帖子来添加这一行以帮助其他人。谢谢Hanks Chris这正是我需要的。我确实在上面添加了这一行:var user=await UserManager.FindByNameAsync(model.Email);因为我现在只有电子邮件。我已经编辑了你的帖子来添加这一行以帮助其他人。谢谢Hanks Chris这正是我需要的。我确实在上面添加了这一行:var user=await UserManager.FindByNameAsync(model.Email);因为我现在只有电子邮件。我已经编辑了你的帖子来添加这一行以帮助其他人。谢谢