在表单模型中,我曾经通过以下方式获取当前登录用户:

Page.CurrentUser

如何在ASP中获得控制器类中的当前用户。净MVC吗?


当前回答

HttpContext.Current.User试试。

公共共享财产当前()作为 System.Web.HttpContext System.Web.HttpContext的成员 简介: 获取或设置当前HTTP请求的System.Web.HttpContext对象。 返回值: 当前的System.Web.HttpContext HTTP请求

其他回答

我使用:

Membership.GetUser().UserName

我不确定这是否适用于ASP。NET MVC,但它值得一试:)

如果你在登录页面中,以LoginUser_LoggedIn事件为例,Current.User.Identity.Name将返回一个空值,所以你必须使用yourLoginControlName。用户名属性。

MembershipUser u = Membership.GetUser(LoginUser.UserName);

这个页面可能就是你要找的: 在MVC3中使用Page.User.Identity.Name

你只需要User.Identity.Name。

我们可以使用下面的代码在ASP中获取当前登录的用户。Net MVC:

var user= System.Web.HttpContext.Current.User.Identity.GetUserName();

var userName = System.Security.Principal.WindowsIdentity.GetCurrent().Name; //will give 'Domain//UserName'

Environment.UserName - Will Display format : 'Username'

我知道这真的很旧,但我刚刚开始使用ASP。NET MVC,所以我想我要坚持我的两分:

请求。IsAuthenticated告诉您用户是否通过了身份验证。 identity为您提供登录用户的标识。