En essayant d'extraire une liste de clés à partir d'un .NET Dictionnaire
Soupçonne mon cerveau ne fonctionne pas aujourd'hui - j'ai besoin d'extraire une liste de clés, etc:
Dictionary<string, MyClass> myDict;
List<String> myKeys = myDict.Keys;
La deuxième ligne ne compiler que les Clés de la propriété renvoie un "KeyCollection" classe, et non pas une liste<> des objets clés.
dupliquer: stackoverflow.com/questions/1276763/...
Double Possible de Comment puis-je obtenir la liste des clés dans un dictionnaire?
Double Possible de Comment puis-je obtenir la liste des clés dans un dictionnaire?
OriginalL'auteur winwaed | 2011-03-08
Vous devez vous connecter pour publier un commentaire.
À l'aide de LINQ, vous pouvez effectuer les opérations suivantes...
Cependant en fonction de ce que votre objectif soit avec les touches (sélective énumération etc), il pourrait faire plus de sens de travailler avec la touche de collection et de ne pas se convertir à une liste.
Ah, donc ce qui me manquait, c'était tout simplement
using System.Linq;
je n'ai jamais utilisé de toutes ces méthodes d'extension qui, soudain, se présenter...OriginalL'auteur Quintin Robinson
KeyCollection met en œuvre la
IEnumerable
interface.Vous pouvez utiliser une méthode d'extension pour la convertir en une liste.
Ou d'utiliser un autre constructeur:
OriginalL'auteur Jaroslav Jandek
Oui, vous pouvez essayer -
IEnumerable<String> myKeys = myDict.Keys;
Toujours une bonne idée d'utiliser
IEnumerable
(plus générique).OriginalL'auteur Kumar
Si vous avez besoin d'une véritable liste:
OriginalL'auteur dsolimano