私はそれぞれ第二行は2つの列が含まれている次のようなチャンクに分割したいコレクション「ケース」(IEnumerable<IPublishedContent>
)を有します拡張メソッドを使用して異なるアプローチを見て、例えば.Chunk(2)
,.Batch(2)
または.Split(2)
であるが、ほとんどの場合、固定サイズに分割されている。 [1,2]、[3,4]、[5,6]、[7]今のところ分割収集
Iは、以下た:
var batches = w
.Select((x, i) => new { x, i })
.GroupBy(p => (p.i/(p.i % 2 == 0 ? 2 : 1)), p => p.x);
var rows = batches;
var count = 0;
foreach (var row in rows)
{
<div class="row">
@foreach (var c in row)
{
<div class="col">@(count+1)</div>
count++;
}
</div>
}
コレクション7つの要素を含む、出力は次のようになります。
<div class="row">
<div class="col">1</div>
</div>
<div class="row">
<div class="col">2</div>
<div class="col">3</div>
</div>
<div class="row">
<div class="col">4</div>
<div class="col">5</div>
</div>
<div class="row">
<div class="col">6</div>
</div>
<div class="row">
<div class="col">7</div>
</div>
どのように私は最初の例のように出力を得ることができますか?
なぜ分割していますか?あなたは本当にp.1%2が必要です。 – jdweng
いいえ、コレクションも2つのグループに分割されています - 最初は4、もう1つは3です。したがって、出力は2行になります。第2列の3列。 –
次に、2で割ってみたいと思います。p =>(int)(pi/2) – jdweng