将模型从视图传递到局部视图
本文关键字:视图 局部 模型 | 更新日期: 2023-09-27 18:21:55
我有一个视图,它需要通过它所使用的模型将数据(在循环中迭代n次)传递给其他部分视图。该局部视图显示了它完成的每个迭代的数据。
视图的代码为:
@model IEnumerable<Domain.Car>
<table>
@foreach (var item in Model) {
<tr>
<td>
@{Html.RenderPartial("~/Views/Shared/_Details.cshtml", item);
</td>
</tr>
}
</table>
部分视图中的代码如下:
@model Domain.Car
<div>
Title: @Model.Title
Description: @Model.Description
</div>
<hr>
但是在这样做之后,当使用局部视图时,我无法获得任何要显示的数据。未显示任何错误,但未返回任何数据。
有人能帮我解决这个问题吗?
提前谢谢。
使用Html.Partial
而不是RenderPartial
:
@Html.Partial("~/Views/Shared/_Details.cshtml", item);
Html.Partial
返回一个String,Html.RenderPartial
在内部调用Write,并返回void。
看看这个答案:https://stackoverflow.com/a/5248218/5071902