我怎样才能在_Layout.cshtml中进行数据绑定

时间:2011-01-07 08:29:08

标签: asp.net-mvc-3

在ASP.NET WebForms中,我可以使用母版页的CodeBehind来获取用于绑定导航的数据。

如何在ASP.NET MVC 3中实现相同功能?

理想情况下,主导航将位于_Layout.cshtml,但此文件没有自己的模型。即它只能使用控制器动作提供的模型(假设@model中有基类和_Layout.cshtml指令。

修改
虽然我意识到MVC没有DataBinding的概念,但我在此处将其包含在内以帮助描述我正在寻找的功能。

1 个答案:

答案 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可以是实现导航的部分。