Question

La langue que j'utilise est C #.

Disons que nous avons un IEnumerable, qui est le résultat d'une requête LINQ. T est un type anonyme. Quelle est la meilleure façon si nous voulons accéder aux éléments de ce type.

Je pense qu'il y a deux façons.

1) Convertissez l'iénumabilité en liste puis accédez aux éléments.

List<T> list = result.ToList();
for(int rowIndex=0; rowIndex<list.Count; rowIndex++)
{
    double x = list[rowIndex].val;
}

2)

for(int rowIndex=0; rowIndex<result.Count(); rowIndex++)
{
    double x = result.ElementAt(rowIndex).val;
} 

La raison pour laquelle je pense à quelque chose comme ce qui précède est que, sauf en accédant aux éléments de l'Iennumerable, j'ai besoin de leurs indices. En d'autres termes, si un élément est le premier, le second, etc.

Merci d'avance pour votre aide !

Était-ce utile?

La solution

Vous n'avez pas besoin de créer une collection, utiliser un int variable qui est 0 et augmente-la dans un foreach. Ensuite, vous avez l'index et l'élément.

int index = 0;
foreach(var x in result)
{
    // x is the element and index the current index
    Console.WriteLine("Val:{0} Index:{1}", x.val, index);
    index ++;
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top