我正在编写一个c# MVC5互联网应用程序,并且在我创建的控制器中获得ApplicationUser
对象时遇到了一些麻烦。
var userManager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new ApplicationDbContext()));
ApplicationUser user = userManager.FindByNameAsync(User.Identity.GetUserId()).Result;
当我尝试运行此代码时,当用户登录时,我将获得ApplicationUser
用户的空对象。
请帮我一下好吗?
Thanks in advance
FindByNameAsync()
期望用户名,但您正在传递用户id。传递用户名…
ApplicationUser user = userManager.FindByNameAsync(User.Identity.GetUserName()).Result;
或使用FindByIdAsync()
方法…
ApplicationUser user = userManager.FindByIdAsync(User.Identity.GetUserId()).Result;