Ainsi, plusieurs fois nous avons une fonction qui accepte un IEnumerable ou ICollection en tant que paramètre. Dans les cas où nous avons des éléments simples, mais pas de collection pour les tenir, il faut créer une collection avant de les transmettre à la fonction, comme:Quelle est la manière la plus simple et la plus compacte de créer un IEnumerable <T> ou ICollection <T>?
T o1, o2, o3;
Foo(new T[] { o1, o2, o3 });
J'ai toujours créé un tableau ou une liste, comme je J'ai fait dans le dernier exemple. Mais je me demande, existe-t-il un moyen plus élégant de créer le IEnumerable ou ICollection requis?
Il serait assez cool, si l'on pouvait faire:
Foo({ o1, o2, o3 });
Et le compilateur créerait la plus abstraite collection possible qui satisferait aux besoins de IEnumerable ou ICollection (selon lequel la fonction accepte).
De toute façon, comment passerait-on o1, o2 et o3 à un paramètre IEnumerable ou ICollection?
Je propose que 'asList()' est pas un bon nom pour une méthode qui retourne un 'Enumerable', pas' list'! Que diriez-vous de 'Enumerable.Create'? –