Asp.net mvc 4 ASP MVC 4中的全局数据
我正在为我们的扑克联盟写一个网站。在_布局页面中,我想包括一些数据库信息,如下一场比赛日期和本赛季剩余的比赛数。我认为_布局是最好的页面,因为我希望所有页面上都有这些信息 如何在那里获取该实体框架数据?我认为控制器不是这样,因为_Layout只是使用自己控制器的其他视图的模板 任何信息或资源都将不胜感激 提前感谢,Asp.net mvc 4 ASP MVC 4中的全局数据,asp.net-mvc-4,Asp.net Mvc 4,我正在为我们的扑克联盟写一个网站。在_布局页面中,我想包括一些数据库信息,如下一场比赛日期和本赛季剩余的比赛数。我认为_布局是最好的页面,因为我希望所有页面上都有这些信息 如何在那里获取该实体框架数据?我认为控制器不是这样,因为_Layout只是使用自己控制器的其他视图的模板 任何信息或资源都将不胜感激 提前感谢, Paul。您应该创建一个基本控制器,所有控制器都从该控制器继承。 在那里,您可以覆盖方法OnActionExecuting(),并从数据库、缓存或任何地方加载该数据,并将其传递到Vi
Paul。您应该创建一个基本控制器,所有控制器都从该控制器继承。 在那里,您可以覆盖方法
OnActionExecuting()
,并从数据库、缓存或任何地方加载该数据,并将其传递到Viewbag:
public class ControllerBase {
protected override void OnActionExecuting(ActionExecutingContext ctx) {
Viewbag.LayoutPageData = ...;
}
}
或者,您可以对所有Viewmodels使用基类,并将模型中的数据传递给视图
布局页面也是一个视图,因此您可以使用viewmodel类强式键入它。您应该创建一个基本控制器,所有控制器都从该控制器继承。 在那里,您可以覆盖方法
OnActionExecuting()
,并从数据库、缓存或任何地方加载该数据,并将其传递到Viewbag:
public class ControllerBase {
protected override void OnActionExecuting(ActionExecutingContext ctx) {
Viewbag.LayoutPageData = ...;
}
}
或者,您可以对所有Viewmodels使用基类,并将模型中的数据传递给视图
布局页面也是一个视图,因此您可以使用viewmodel类强式键入它。您也可以使用Html.Action,如本示例中所示
您也可以像本示例中那样使用Html.Action
您可以在部分页面中显示数据库信息,例如“\u NextGameDate.cshtml” 然后,您必须通过以下方式将其包含在_Layout.cshtml页面中:
@Html.Partial("_NextGameDate.cshtml");
您可以在部分页面中显示数据库信息,例如“\u NextGameDate.cshtml” 然后,您必须通过以下方式将其包含在_Layout.cshtml页面中:
@Html.Partial("_NextGameDate.cshtml");
可以渲染局部视图。可以渲染局部视图。