www net mvc5 mvc4 mvc framework asp asp.net-mvc-3

asp.net-mvc-3 - mvc5 - www asp net mvc mvc4



Usando Page.User.Identity.Name en MVC3 (3)

MVC 2

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

MVC 3

@this.User.Identity.Name

En MVC2 usé Page.User.Identity.Name usando el <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>

¿Cómo puedo usar el mismo en MVC3?


Siempre puedes hacer algo como:

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

pero no lo hagas

Normalmente, una vista no debe tratar de obtener dicha información. Está allí para mostrar cualquier información que pase el controlador. Debería estar fuertemente tipado en una clase de modelo que se pasa por una acción del controlador.

Así que en la acción del controlador renderizando esta vista:

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

Ahora dentro de la vista, siéntase libre de usar esta información:

@Model.Username


Yo tuve el mismo problema. Utilicé este tutorial para resolver este problema.

En resumen, en su opinión, ponga este código:

@Context.User.Identity.Name

Solo asegúrese de que el proyecto esté configurado para autenticar con Windows.