在ASP.NET WebForms中,我可以使用母版页的CodeBehind来获取用于绑定导航的数据。
如何在ASP.NET MVC 3中实现相同功能?
理想情况下,主导航将位于_Layout.cshtml
,但此文件没有自己的模型。即它只能使用控制器动作提供的模型(假设@model
中有基类和_Layout.cshtml
指令。
修改
虽然我意识到MVC没有DataBinding的概念,但我在此处将其包含在内以帮助描述我正在寻找的功能。
答案 0 :(得分:10)
如何在ASP.NET MVC 3中实现相同的目标?
数据绑定的概念对于MVC模式并不常见。要实施导航,您可以使用Html.Action and Html.RenderAction。
示例:
public class NavigationController : Controller
{
public ActionResult Index()
{
NavigationViewModel model = ...
return View(model);
}
}
然后在布局中:
@Html.Action("Index", "Navigation")
index.cshtml可以是实现导航的部分。