我使用 asp.net mvc 3 在 web 应用程序上工作,问题在于变量“User.Identity.Name”返回名称而不是 UserId。你已经有这个问题了吗?
问问题
1186 次
3 回答
2
你已经有这个问题了吗?
这不是问题。这是设计使然。在表单身份验证 cookie 中,仅存储用户名。您可以在用户名列上的数据库中建立索引,并在给定此唯一用户名的情况下有效地检索用户详细信息。
于 2012-05-31T14:26:50.917 回答
2
User.Identity.Name
属性包含在身份验证期间传递给的字符串FormsAuthentication.SetAuthCookie(thisString)
。
如果您希望此属性包含 userId,请将身份验证代码更改为
FormsAuthentication.SetAuthCookie(userId);
于 2012-05-31T14:31:08.630 回答
0
正如达林所说,这是设计使然。
在您的表单身份验证 cookie 创建方法中,只需将您的 UserID 保存在 Name 属性中
于 2012-05-31T14:28:39.463 回答