Équivalent .NET de Java List.subList ()?

Existe-t-il un équivalent .NET de List.subList() de Java qui fonctionne sur IList ?

en utilisant LINQ

 list.Skip(fromRange).Take(toRange - fromRange) 

Pour la List générique List , il s’agit de la GetRange(int, int) .

Edit: notez qu’il s’agit d’une copie superficielle et non d’une “vue” de l’original. Je ne pense pas que C # offre cette fonctionnalité exacte.

Edit2: comme le souligne Kamarey, vous pouvez avoir une vue en lecture seule:

 List integers = new List() { 5, 6, 7, 8, 9, 10, 11, 12 }; IEnumerable view = integers.Skip(2).Take(3); integers[3] = 42; foreach (int i in view ) // output 

Ce qui précède imprimera 7, 42, 9.

GetRange est votre réponse