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.