我是MVC的新手并且有一个问题。 Visual Studio模板创建一个表dbo.AspNetUsers
,其中包含一个名为Id
的列。从我的控制器中我想为登录的用户获取该值
public ActionResult Index ()
{
if (!Request.IsAuthenticated) // if not logged in
{
Response.StatusCode = 404;
return null;
}
else
{
string thisUserId = ???
// do something with thisUserId
}
我查看了源文件,但无法弄清楚我是如何得到这些文件的。
答案 0 :(得分:1)
这适用于我的项目(使用System.Web.Security.SqlMembershipProvider
)
HttpContext httpContext = HttpContext.Current;
string userName = httpContext.User.Identity.Name;
MembershipUser membershipUser = Membership.GetUser(userName);
object providerUserKey = membershipUser.ProviderUserKey;
string thisUserId = providerUserKey.ToString();