我试图将不同的模块插入一个视图中。 问题是,我尝试在foreach循环中渲染一些视图。
@model IEnumerable<AZG.Models.Categories>
@foreach (var item in Model)
{
<div role="tabpanel" class="tab-pane active" id="@item.Alias">
<div class="panel-group" id="accordion" role="tablist" aria-multiselectable="true">
<div class="panel panel-default">
<div class="panel-heading" role="tab" id="headingThree">
<h4 class="panel-title">
<a data-toggle="collapse" data-parent="#accordion" href="#collapseThree" aria-expanded="false" aria-controls="collapseThree">
@item.Name
</a>
</h4>
</div>
<div id="collapseThree" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingThree">
<div class="panel-body">
@{Html.RenderAction("PartialSubCategories", "JobReferences", new { id = item.CategoryId });}
</div>
</div>
</div>
</div>
</div>
}
对于模型中的每个项目,视图应该呈现一个Action,它应该取消另一个部分视图。
问题是,系统意味着,我不必插入&#34; @ {&#34;在@foreach里面。
在这种情况下,任何想法或不是无意义的。
答案 0 :(得分:1)
使用
@Html.Action("PartialSubCategories", "JobReferences", new { id = item.CategoryId })
代替。
答案 1 :(得分:0)
Html.RenderAction
直接在页面上呈现结果。
Html.Action
返回一个字符串作为结果。
此外,您不需要在@{...}
代码块中使用剃刀代码块@foreach
。
尝试替换
@{Html.RenderAction("PartialSubCategories", "JobReferences", new { id = item.CategoryId });}
与
@Html.Action("PartialSubCategories", "JobReferences", new { id = item.CategoryId })