如何使用与主视图不同的模型的子视图?

时间:2011-05-18 21:04:23

标签: c# razor partial-views

我想使用局部视图来表示表的行:

// SomeItem.cshtml
@model SomeItemModel
<tr>
    <td>
        @Html.DisplayTextFor(m => m.SomeField)
    </td>
    <td>
        @Html.DisplayTextFor(m => m.AnotherField)
    </td>
</tr>

从表示包含该表的页面的视图中调用它:

// SomeCollection.cshtml
@model SomeCollection
...
<table><tbody>
@foreach (TipoDocumentoModel item in Model) {
    Html.Partial("SomeItem", item);
}>
</tbody></table>
...

但它不起作用。为什么呢?

1 个答案:

答案 0 :(得分:2)

调用Html.Partial会返回MvcHtmlString而不向页面写任何内容。

您需要添加@以将MvcHtmlString呈现给页面。