gpt4 book ai didi

c# - Umbraco C# - 在 foreach 循环中显示 2 个不同的列 (1-2) (1-2)

转载 作者:行者123 更新时间:2023-11-30 22:54:51 27 4
gpt4 key购买 nike

我试图在 foreach 循环(bootstarp 列)中以 1-2 的顺序显示来自 Umbraco 的数据,但我的代码是按 1-1 列的顺序显示的,而不是1-2 循环。它不会将第二列添加到第二行,而只是添加一列。

例如显示 1 个项目,然后显示 2 个项目,然后再显示 1 个项目。

制作 1-2 内容循环的更好方法是什么?我有点迷失在这个上。任何帮助都会很好。

 <div class="container-fluid" style="padding-left: 117px;">

<div class="row" style="margin-top: 5em;">

<div class="col-lg-9 col-md-9 col-sm-9">

<!-- BLOG START-->

@foreach(var data in Model.Content.Children().Where(x => !x.GetPropertyValue<bool>("umbracoNaviHide"))){

if(data.HasValue("blogNested")){

var items = data.GetPropertyValue<IEnumerable<IPublishedContent>>("blogNested");

int i = 0 ;

foreach(var item in items){

<div class="row">

@if(i % 2 == 0) {

<div class="col-md-4 col-sm-12">
<div class="card">
<img src=" /media/1180/dude.jpg" style="height: 15em;">
</div>
</div>

<div class="col-md-6 col-sm-12">
<span class="card-text qs-blog-direcao">@(item.GetPropertyValue<string>("tipoDeDirecao"))</span><br><br>
<span class="qs-blog-date-1page">@(item.GetPropertyValue<string>("dataDePublicacaoBlog"))</span><br>
<span class="qs-blog-publicado-por"> @(item.GetPropertyValue<string>("publicadoPorBlog")) - OPINIÃO </span><br><br><br>
<span class="qs-blog-titulo-1page">@(item.GetPropertyValue<string>("tituloBlog"))</span>
</div>

<div class="col-md-12 col-sm-12" style="margin-top:2em;">
<span class="qs-blog-resumo d-flex justify-content-start">@(item.GetPropertyValue<string>("resumoBlog"))</span>
<span class="d-flex justify-content-end"><a><img src=" /media/1027/icon_inf_verde.png"></a></span>
</div>



}

else {

<div class="col-md-6 col-sm-12">
<span class="card-text qs-blog-direcao-double">@(item.GetPropertyValue<string>("tipoDeDirecao"))</span><br>
<img src=" /media/1182/tempo.jpg" style="height: 10em;margin-top: 2em;">
<div class="qs-blog-sideByside">
<span class="qs-blog-date-1page-double">@(item.GetPropertyValue<string>("dataDePublicacaoBlog"))</span><br>
<span class="qs-blog-publicado-por-double"> @(item.GetPropertyValue<string>("publicadoPorBlog")) - OPINIÃO </span>
</div>
<div class="qs-blog-titulo-1page-double">@(item.GetPropertyValue<string>("tituloBlog"))</div>
<div class="qs-blog-resumo-blog d-flex justify-content-start">@(item.GetPropertyValue<string>("resumoBlog"))</div>
<span class="d-flex justify-content-end"><a><img src=" /media/1027/icon_inf_verde.png"></a></span>
</div>

}


@{i++;}

</div>


}


}
}

<!-- BLOG START-->
</div>

最佳答案

可能是这样的

var items = data.GetPropertyValue<IEnumerable<IPublishedContent>>("blogNested")
.ToList();

while (items.Any())
{
var oneItem = items.First();
items.Remove(oneItem);

<div class="row">
<div class="col-md-12">
@oneItem.Id
</div>
</div>

var twoItems = items.Take(2).ToList();

if (twoItems.Any())
{
<div class="row">
@foreach (var item in twoItems)
{
items.Remove(item);
<div class="md-6">
@item.Id
</div>
}
</div>
}
}

这将呈现

<div class="row">
<div class="col-md-12">
<text>{{Id}}</text>
</div>
</div>
<div class="row">
<div class="md-6">
<text>{{Id}}</text>
</div>
<div class="md-6">
<text>{{Id}}</text>
</div>
</div>
<div class="row">
<div class="col-md-12">
<text>{{Id}}</text>
</div>
</div>
...

关于c# - Umbraco C# - 在 foreach 循环中显示 2 个不同的列 (1-2) (1-2),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55876980/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com