我用一个列表创建了几个应用程序,但在这个特定区域我想在一个应用程序中使用两个列表。有没有办法可以做到这一点,如果是这样,我如何在转发器/循环中引用正确的列表?
以下是我如何迭代目前列表中项目的示例:
@foreach (var e in List)
{
var Content = e.Content;
<div class="col-md-3 col-sm-4">
<div class="staff-info" style="background-image: url('@Content.StaffPhoto'); background-size: cover;">
@Edit.Toolbar(Content)
<div class="staff-label">
<p class="fullname upper">@Content.Name</p>
<p class="jobtitle upper">@Content.Title</p>
<hr style="border-color:white; max-width: 90%">
<p class="staff-quote"> “@Content.Quote”</p>
</div>
</div>
</div>
}
答案 0 :(得分:0)
这很容易做到。首先,最好直接迭代数据流,然后是list-object(这是一种较旧的方式,但仍然有效)。所以你的循环更像是
@foreach(var cont in AsDynamic(Data["Default"])) {
<div class="col-md-3 col-sm-4">
<div class="staff-info" style="background-image: url('@cont.StaffPhoto'); background-size: cover;">
@Edit.Toolbar(cont)
<div class="staff-label">
<p class="fullname upper">@cont.Name</p>
<p class="jobtitle upper">@cont.Title</p>
<hr style="border-color:white; max-width: 90%">
<p class="staff-quote"> “@cont.Quote”</p>
</div>
</div>
</div>
}
默认流与List是同一组信息,如果您需要演示项目,则可以将它们作为项目的属性,如cont.Presentation
。
现在,如果您有来自查询的其他流,则只需将数据[&#34;默认&#34;]替换为该流名称,例如Data["SortedCategories"]
。
或者,如果您想从整个应用程序中获取某个类型的所有项目,您可以浏览App-object并循环遍历App.Data["Categories"]
并继续从那里开始。