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