La construction d'une application MVC 3 avec Razor et j'ai des informations persistantes dans la portée de la session qui seront utilisées dans le fichier _Layout.
Je n'ai aucune idée de la meilleure façon de mettre cela en œuvre. Certaines de ces informations sont utilisées pour déterminer ce qui est rendu dans l'en-tête.
J'ai un objet CurrentUser stocké dans la portée de la session
Vous pouvez simplement accéder au HttpContext dans le fichier de mise en page
@HttpContext.Current.Session["Whatever"].ToString()
ou, si vous souhaitez accéder à l'objet utilisateur, vous pouvez simplement créer un objet dans la page et l'affecter
@{ CurrentUser user = (CurrentUser)HttpContext.Current.Session["CurrentUser"]; }
Plus tard dans votre code ...
@user.Name
Un moyen plus simple de le faire consiste à utiliser la propriété Session
directement à partir de la vue (HttpContext.Current.
le préfixe ne devrait pas du tout être nécessaire):
@(CurrentUser)Session["CurrentUser"]