【问题标题】:Render strongly type partial view in layout MVC4 razor在布局 MVC4 razor 中渲染强类型部分视图
【发布时间】:2013-06-23 22:22:00
【问题描述】:

我在布局视图中渲染强类型部分视图时遇到了一些问题。

  1. 部分视图(菜单)是带模型菜单的带
  2. 我想在 _layout.chtml 中呈现这个局部视图,所以它可以在所有视图中使用。

我想让所有页面/视图中的部分视图(菜单)可用。我面临的问题是在页面加载时将部分视图的操作放在哪里,以便从数据库中填充它。

谢谢

---------------------- My code is--------------------
partial view inside shared folder.
@model List<Menu>
@foreach(var item in Model){// here is the html/model item inside to display}
--------------------------------------
HomeView.chtml inside home folder

@model List<homemodel>
.... here goes html code/ plus homemodel loop/data etc.
------------------------------
HomeController{
public ActionResult HomeView()
{
.........return view();
}
public PartialViewResult partialmenu()
{
// data from db
return partialview(partialobject as list);
}

------------------------
layoutview.chtml

--html code---
{@ Html.renderpartial("partialview");}
.. html code...

【问题讨论】:

    标签: asp.net-mvc-4 razor model partial-views strongly-typed-view


    【解决方案1】:

    I want to make available the partial view(menu) in all pages/view. the problem I face is where to put the action for partial view to populate it from DB on page load.

    写入布局:Html.RenderAction('MyMenu') 或 Html.Action('MyMenu'),然后从任何来源填充它。您的操作将返回强类型模型。

    【讨论】:

    • @user2315795 将RenderPartial 替换为RenderAction。您不能使用RenderPartial,因为您必须为其提供模型。
    【解决方案2】:

    在哪里放置局部视图的操作以从数据库中填充它 页面加载。

    每个视图都有它自己的控制器..不管它是否是部分的...因此您可以在它自己的控制器上填充您的 视图...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-09
      • 1970-01-01
      • 1970-01-01
      • 2023-04-01
      • 1970-01-01
      相关资源
      最近更新 更多