【发布时间】:2010-12-07 20:22:22
【问题描述】:
使用 Razor 构建一个 MVC 3 应用程序,我在 Session 范围内保留了一些信息,这些信息将在 _Layout 文件中使用。
我不知道实现这一点的最佳方法是什么。其中一些信息用于确定在标头中呈现的内容。
我有一个 CurrentUser 对象存储在 Session 范围内
【问题讨论】:
标签: asp.net-mvc-3 razor
使用 Razor 构建一个 MVC 3 应用程序,我在 Session 范围内保留了一些信息,这些信息将在 _Layout 文件中使用。
我不知道实现这一点的最佳方法是什么。其中一些信息用于确定在标头中呈现的内容。
我有一个 CurrentUser 对象存储在 Session 范围内
【问题讨论】:
标签: asp.net-mvc-3 razor
您可以只访问布局文件中的 HttpContext
@HttpContext.Current.Session["Whatever"].ToString()
或者,如果你想访问用户对象,你可以在页面中创建一个对象并分配它
@{ CurrentUser user = (CurrentUser)HttpContext.Current.Session["CurrentUser"]; }
然后在您的代码中...
@user.Name
【讨论】:
Session_Started() 是为用户创建会话的时间
更简单的方法是直接从视图中使用Session 属性(根本不需要HttpContext.Current. 前缀):
@(CurrentUser)Session["CurrentUser"]
【讨论】: