使用Razor构建MVC 3应用程序,我在Session范围内保留了一些信息,这些信息将在_Layout文件中使用。
我不知道实现这个的最佳方法是什么。其中一些信息用于确定标题中呈现的内容。
我有一个存储在会话范围
中的CurrentUser对象答案 0 :(得分:54)
您只需访问布局文件中的HttpContext
即可@HttpContext.Current.Session["Whatever"].ToString()
或者,如果您想要访问用户对象,您只需在页面中创建一个对象并分配它
@{ CurrentUser user = (CurrentUser)HttpContext.Current.Session["CurrentUser"]; }
然后在你的代码中......
@user.Name
答案 1 :(得分:3)
更简单的方法是直接在视图中使用Session
属性(根本不需要HttpContext.Current.
前缀):
@(CurrentUser)Session["CurrentUser"]