Duplicar posible:
Getting odd/even part of a sequence with LINQ
How can I get every nth item from a List<T>?Seleccionar elementos pares/impares en IEnumerable <T>?
estoy usando HtmlAgilityPack y C# para analizar algo de HTML.
<div id="post-8266">
<div class="ruler"> </div>
<div id="post-8266">
<div class="ruler"> </div>
<div id="post-8266">
<div class="ruler"> </div>
<div id="post-8266">
<div class="ruler"> </div>
Básicamente, tengo estos elementos, cada uno en su propio objeto, dentro de un IEnumerable.
Hay una forma elegante de obtener cada elemento N/2 de la colección. Es decir, omita cada div con la clase .ruler
?
Necesitaría iterar a través del conjunto resultante, así que o bien copio cada objeto encontrado en un nuevo IEnumerable o simplemente lo uso en línea en una función foreach.
Por ejemplo:
//Copying resulting set to new IEnumerable<T>:
var odds = elements.SelectOdds();
//Using it inline for my usage:
foreach (var x in elements.SelectOdds())
{
}
Qué opciones sería lo mejor, y cómo puedo lograr esto con elegancia?
posibles duplicados: [Obteniendo parte impar/par de una secuencia con LINQ] (http://stackoverflow.com/questions/267033/getting-odd-even-part-of-a-sequence-with-linq), [ ¿Cómo puedo obtener cada enésimo elemento de una lista?] (Http://stackoverflow.com/questions/682615/how-can-i-get-every-nth-item-from-a-listt) –
mellamokb