2011-11-16 12 views
5

Tengo una lista en C#. Dado dos números, la posición inicial y la cantidad de registros, ¿cómo puedo seleccionar desde el medio de una lista? ¿Qué tipo de colección debo usar?Seleccione una sección del medio de una lista en C#

E.g. Posición inicial = 10. Número de registros = 20. Número total de registros en la lista = 50. Quiero recuperar los objetos en los elementos 10 a 29.

Respuesta

11

Suponiendo que está utilizando .NET 3.5:

using System.Linq; 

list.Skip(10).Take(20) 
+0

@Jason: Joe tiene razón. Lo conté en mis dedos para estar seguro :) Ataques uno por uno otra vez –

+0

@Jason Incluye los elementos finales así que tiene que ser 20 y también dice 'Número de registros = 20' – V4Vendetta

0

utilizar los métodos de extensión de LINQ skip() y take()

var myList = getList(); 
var middle = myList.Skip(10).Take(20); 
1

Algo así como list1.Skip(10).Take(20) debe trabajar para usted

0

nos puede e

List<T> 

con los métodos de extensión de LINQ mencionados por otros (con "utilizando System.Linq").

Cuestiones relacionadas