数据驱动的asp.net mvc布局
本文关键字:mvc 布局 net asp 数据驱动 | 更新日期: 2023-09-27 18:01:01
我有一个控制器操作:
public ActionResult Sub(int id)
{
SubPage_Table subpage_table = db.SubPage_Table.Single(s => s.PageID == id);
if (subpage_table == null)
{
return HttpNotFound();
}
return View(subpage_table);
}
和一个视图:
@model Name.Models.DB.SubPage_Table
@Html.Raw(HttpUtility.HtmlDecode(Model.PageContent))
但我的布局需要强类型:
@model IEnumerable<Name.Models.DB.SubPage_Table>
@foreach (var item in Model)
{@: <li> @Html.ActionLink((item.PageTitle), "Sub", new { id = item.PageID })</li>
}
如何用数据填充视图和布局?
以下是更好的选项:
使用数据驱动的信息创建局部视图
public LayoutController
{
public ActionResult CreateMenu()
{
var model = db.getmenudata();
return PartialView(model);
}
}
然后Layout/Createmenu.cshtml只创建数据驱动的html。
在您的_Layout.chtml:中
<html>
... etc
@Html.RenderAction("Createmenu", "layout");
... etc
@RenderBody();
... etc
</html>