J'ai deux variables de type ILookup. Je voulais utiliser Union ou Concat pour combiner leurs valeurs et assigner le résultat à une troisième variable du même type. Union et Concat retournent IGrouping. Il doit être très simple de convertir IGrouping en ILookup mais je ne peux pas le faire !!! :-(IGrouping expose juste la clé donc je me bats avec le deuxième paramètre de la recherche ... Toute aide sera beaucoup, très appréciéeLINQ Convertir de IGrouper en Recherche
Répondre
Je pense que vous devrez d'abord aplatir les séquences, à utiliser ToLookup
:
var lookup = first.Concat(second)
.SelectMany(group => group,
(group, item) => new { Key = group.Key,
Item = item })
.ToLookup(x => x.Key, x => x.Item);
qui utilise la forme d'SelectMany
qui prend deux délégués: une pour convertir un élément dans la séquence d'origine à une collection, et un autre pour prendre un élément de la collection d'origine (le groupe) et un élément de la collection retournée (c'est-à-dire les éléments correspondant à la clé de ce groupe) pour arriver à l'élément de résultat.C'est la manière la plus simple (je pense!) d'aplatir un groupement en une séquence d'éléments avec leurs clés. .
Ce qui précède n'a pas été testé, donc pourrait être complètement faux. C'est aussi relativement inefficace ... c'est dommage qu'il n'y ait aucun moyen de construire une instance de Lookup
directement. Vous pouvez implémenter ILookup
vous-même, bien sûr.
- 1. Recherche en xml avec linq
- 2. Convertir SQL en LINQ en SQL
- 3. Créer IGrouper à partir d'une structure de données déjà groupée
- 4. Convertir une instruction SQL en Linq
- 5. convertir sql à LINQ
- 6. Recherche XDocument simple LINQ
- 7. LINQ Convertir le dictionnaire pour rechercher
- 8. Convertir requête linq avec avoir
- 9. Convertir mon SQL à LINQ
- 10. Recherche plein texte dans LINQ
- 11. Recherche de contrôle récursive avec LINQ
- 12. Trier par critères de recherche C# LINQ
- 13. C# Recherche de requêtes Linq multiple Problème
- 14. LINQ to SQL - convertir les utilisateurs temporaires en utilisateurs réels
- 15. Linq to Sql - Convertir l'aide C# en VB.NET
- 16. Linq to Sql convertir en liste générique dans VB.NET
- 17. Comment convertir le convertisseur SQL (varchar, datefield, 106) en LINQ?
- 18. LINQ Recherche de mots-clés avec orderby pertinence en fonction du nombre (LINQ to SQL)
- 19. Comment convertir une requête sql en une requête linq
- 20. Linq To SQL DAL et source de données de recherche
- 21. Un DSL pour Linq Queries - recherche d'idées
- 22. Convertir timestamp en alphanum
- 23. Comment convertir un champ de temps en chaîne en utilisant linq sql?
- 24. Tests de recherche complets dans LINQ (requête de filtre personnalisée)
- 25. Recherche avancée dans Linq to SQL possible?
- 26. Fonction de recherche efficace avec Linq to SQL
- 27. Convertir xml en xsd en utilisant java
- 28. LINQ Problème: Impossible de convertir un objet de type 'System.Reflection.Module' en type 'System.Reflection.Emit.ModuleBuilder
- 29. Comment puis-je convertir cette expression de requête LINQ de C# en VB.NET?
- 30. LINQ question de recherche, les besoins se joint