Je suis nouveau à Linq. J'ai une table Customers.ID, FullName, Organization, Location étant les colonnes. J'ai une requête dans Sqlite qui me renvoie 2500 enregistrements de clients. Je dois trouver l'index du client où ID = 150 par exemple à partir de cet ensemble de résultats. C'est une liste de clients. Le jeu de résultats de la requête est ordonné par organisation. J'ai essayé avec FindIndex et IndexOf mais obtenant des erreurs pour le premier et -1 pour le second. Alors, comment faut-il procéder? Merci.
Vous n'avez pas besoin d'utiliser LINQ
, vous pouvez utiliser FindIndex
of List<T>
:
int index = customers.FindIndex(c => c.ID == 150);
Linq to Objects a surchargé Select method
customers.Select((c,i) => new { Customer = c, Index = i })
.Where(x => x.Customer.ID == 150)
.Select(x => x.Index);
Gardez à l'esprit que vous devez avoir en mémoire List<Customer>
pour utiliser cette méthode Linq to Objects.