开发者

Using Page.User.Identity.Name in MVC3

开发者 https://www.devze.com 2023-02-03 07:39 出处:网络
In MVC2 I have used Page.User.Identity.Name using the <%@ Control Language=\"C#\" Inherits=\"System.Web.Mvc.ViewUserControl\" %>

In MVC2 I have used Page.User.Identity.Name using the <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>

How can I use the same 开发者_开发知识库in MVC3?


You can always do something like:

@Html.ViewContext.HttpContext.User.Identity.Name

but don't.

Normally a view shouldn't try to fetch such information. It is there to display whatever information is passed by the controller. It should be strongly typed to a model class which is passed by a controller action.

So in the controller action rendering this view:

[Authorize]
public ActionResult Index()
{
    var model = new MyViewModel
    {
        Username = User.Identity.Name
    }
    return View(model);
}

Now inside the view feel free to use this information:

@Model.Username


MVC 2

<%: this.Page.User.Identity.Name %>

MVC 3

@this.User.Identity.Name


I had the same problem. I used this tutorial to solve this issue.

In short, in your view, put this code:

@Context.User.Identity.Name

Just make sure that the project is set to authenticate with windows.

0

精彩评论

暂无评论...
验证码 换一张
取 消