部分视图不显示但其viewmodel适用于父视图

时间:2016-12-30 22:38:06

标签: c# .net asp.net-mvc model-view-controller

在cshtml代码标题中,我实例化了一些包含一些数据的视图模型。我可以绑定到父页面中的viewmodel变量并显示数据。但是,当我将viewmodel变量传递给子部分视图时,页面上没有任何内容显示。

@{
    Html.Partial("DailyReport", @DailyReportViewModel);
}

知道为什么子部分视图不会显示在页面上或如何调试此问题?

2 个答案:

答案 0 :(得分:2)

因为您正在调用返回MvcHtmlString的{​​{1}}方法,但您没有使用该方法的返回值。

你可以这样做

@Html.Partial("DailyReport", @DailyReportViewModel);

Razor现在将从DailyReport方法渲染返回值。

或者您可以使用呈现结果的RenderPartial方法。

@{
   Html.RenderPartial("DailyReport", DailyReportViewModel);
}

假设DailyReportViewModel是类型T的对象,您的部分视图被强类型化为。{/ p>

答案 1 :(得分:0)

@放在前面并从@中移除DailyReportViewModel,它应该有效。

@Html.Partial("DailyReport", DailyReportViewModel);