【发布时间】:2015-05-11 04:53:31
【问题描述】:
我尝试通过本教程将自定义数据添加到 MVC5 身份验证。 http://blog.falafel.com/customize-mvc-5-application-users-using-asp-net-identity-2-0/ 这工作正常。 现在我想显示我添加到管理个人资料页面的自定义字段。 在这里您现在只能更改密码。 这是我尝试获取用户信息的控制器:
public async Task<ActionResult> Index(ManageMessageId? message)
{
ViewBag.StatusMessage =
message == ManageMessageId.ChangePasswordSuccess ? "Your password has been changed."
: message == ManageMessageId.SetPasswordSuccess ? "Your password has been set."
: message == ManageMessageId.SetTwoFactorSuccess ? "Your two-factor authentication provider has been set."
: message == ManageMessageId.Error ? "An error has occurred."
: message == ManageMessageId.AddPhoneSuccess ? "Your phone number was added."
: message == ManageMessageId.RemovePhoneSuccess ? "Your phone number was removed."
: "";
var userId = User.Identity.GetUserId();
//Here starts my error
var manager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new ApplicationDbContext()));
var currentUser = manager.FindById(User.Identity.GetUserId());
var model = new IndexViewModel
{
HasPassword = HasPassword(),
Logins = await UserManager.GetLoginsAsync(userId),
BrowserRemembered = await AuthenticationManager.TwoFactorBrowserRememberedAsync(userId),
};
return View(model);
}
通过 var manager = new UserManager...... 我得到错误 找不到命名空间“UserStore”的类型。 但这是 MVC 用于身份验证的标准命名空间。
我在这里错过了什么吗? 在此先感谢
【问题讨论】:
标签: c# authentication asp.net-mvc-5