asp.net - 如何检索当前登录用户的电子邮件确认状态?
问题描述
我需要确定用户是否确认了他们的电子邮件地址。
我尝试过使用下面的代码和 usermanager、SigninManager、ApplicaitonUserManager 等的多次迭代,但没有运气。在下面的场景中,我收到错误“UserManager 的参数太少”。
Dim emailstatus as string
If UserManager.IsEmailConfirmedAsync=True then
emailstatus="confirmed"
ElseIf UserManager.IsEmailConfirmedAsync=False Then
emailstatus="unconfirmed"
Else
End If
我只需要检索当前登录用户的 IsEmailConfirmed 状态。
解决方案
这是我用来获取当前登录用户的功能:
Private Function GetUser() As ApplicationUser
Return HttpContext.GetOwinContext().GetUserManager(Of ApplicationUserManager).FindById(User.Identity.GetUserId())
End Function