在 ASP.NET MVC 的 Layout.cshtml 页面中从 DB 获取数据后,我想在导航栏中加载数据。但是我面临一个问题,即如何在布局页面中获取数据,因为没有与 Web 表单中的代码隐藏文件不同的 Controller 。 任何人请帮助我: - 如何在数据模型中存储数据 - 如何将其传递到布局页面 提前致谢。
请您参考如下方法:
使用子 Action :
public class FooController : Controller
{
...
[ChildActionOnly]
public ActionResult NavBar()
{
var navbar = // query your database;
return PartialView("_NavBar", navbar);
}
}
然后创建局部 View Views\Shared\_NavBar.cshtml
并将其 HTML 放在那里。您的模型将是您在子操作中从数据库中查询的内容。
终于在你的布局中:
@Html.Action("NavBar", "Foo")