L'utilisation Page.User.Identity.Name dans MVC3
-
26-09-2019 - |
Question
Dans MVC2 Je l'ai utilisé Page.User.Identity.Name
en utilisant le <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
Comment puis-je utiliser le même dans MVC3?
La solution
Vous pouvez toujours faire quelque chose comme:
@Html.ViewContext.HttpContext.User.Identity.Name
mais ne sont pas.
Normalement, une vue ne doit pas essayer de chercher ces informations. Il est là pour afficher toutes les informations est transmis par le contrôleur. Il devrait être fortement typé à une classe de modèle qui est passé par une action du contrôleur.
Ainsi, dans l'action du contrôleur rendu ce point de vue:
[Authorize]
public ActionResult Index()
{
var model = new MyViewModel
{
Username = User.Identity.Name
}
return View(model);
}
Maintenant dans la vue ne hésitez pas à utiliser ces informations:
@Model.Username
Autres conseils
MVC 2
<%: this.Page.User.Identity.Name %>
MVC 3
@this.User.Identity.Name
J'ai eu le même problème. Je ce tutoriel pour résoudre ce question.
En bref, selon vous, mettre ce code:
@Context.User.Identity.Name
Assurez-vous que le projet est défini pour authentifier avec Windows.