LINQ inner join
J'ai deux collections:
List<int> ids;
List<User> users;
Où User
a id, nom, etc.
Je voudrais intérieure se joindre à ces deux collections et de retour d'un nouveau List<int>
avec l'id de la première collection, qui sont également dans la deuxième collection (id Utilisateur).
Je suis LINQ et ne savez pas par où commencer.
Grâce.
Vous devez vous connecter pour publier un commentaire.
Vous n'avez pas besoin d'utiliser une jointure pour ce faire:
EDIT: En réponse à la question dans les commentaires, vous pouvez obtenir une liste des utilisateurs sans l'aide de
Join
:Cependant, cela est tout à fait inefficace depuis le
Where
clause a pour numériser la liste des identifiants pour chaque utilisateur. Je pense Rejoindre serait la meilleure façon de gérer ce cas:List<long> commonIds = ids.Intersect<long>( users.Select<User, long>(u => (long)u.Id) ).ToList<long>();
fonctionne très bien