在表单模型中,我曾经通过以下方式获取当前登录用户:
Page.CurrentUser
Run Code Online (Sandbox Code Playgroud)
如何在ASP.NET MVC中的控制器类中获取当前用户?
我有一些表具有与aspnet_Users.UserID相关的uniqueidentifier UserID.当用户为这些表提交一些数据时,由于控制器方法有[授权],我得到一个用户对象.我可以使用User.Identity.Name获取用户名,但是如何让UserID能够建立(所有权)关系?
如何获取登录用户的UserId?我正在使用标准系统生成的AccountModel.我可以使用以下命令获取用户名
User.Identity.Name
Run Code Online (Sandbox Code Playgroud)
但我没有看到UserId字段.我想将UserId用作另一个表的外键.
使用MVC 5。
我是新来的Users,Identities和Claims。
我如何AspNetUser从那里得到HttpContext.Current.User?我知道,我可以使用HttpContext.Current.User.Identity.Name(这是用户的电子邮件地址,我的系统上),然后打AspNetUser表的用户,但有没有更好的办法让AspNetUser从HttpContext.Current.User我失踪?例如它HttpContext.Current.User已经包含在某个地方了吗?
我曾经尝试过使用Google,但并未真正找到该特定问题的任何答案。
使用ASP.NET成员资格,如果我想获取当前用户的信息,我可以打电话 MembershipUser.GetUser()
因此,系统必须知道当前用户的ID.
如果这是正确的,并且我想要的只是当前用户的ID,是否有办法在不从数据库返回所有用户信息的情况下获取它?
我知道我可以使用当前用户的用户名User.Identity.Name,但我需要ID.
我的MVC 5网络应用程序中存在以下问题。我使用数据库优先方法和实体框架创建了一个表[accountlist],该表对from [UserId]的[Id]列具有外键关系[AspNetUsers]。现在,相关accountlist.cshtml内容包含一个下拉菜单。我也尝试过,@Html.HiddenFor(model => model.UserId, new { @Value = HttpContext.Current.User.Identity.Name})但问题是我需要正确的用户名而不是用户名(我不希望[UserName]from [AspNetUsers]是主键)。
不幸的是,HttpContext.Current.User.Identity.GetUserId()如该解决方案中所建议的那样,Identity不包含GetUserId()的定义。
有人有解决方案吗?
提前致谢!
可能重复:
如何在Asp.Net MVC中获取当前用户
我已经尝试了一堆不同的东西,我知道我当我用Web表单之前已经做了,但我似乎无法弄清楚如何做到这一点的MVC.
成员资格不起作用用户给了我一个IPrincipal或者User.Identity给了我相同类型的变量...
谁知道?是否有任何GetCurrentUser()方法或类似的东西?