Quindi, molte volte abbiamo una funzione che accetta un IEnumerable o ICollection come parametro. Nei casi in cui abbiamo singole voci, ma nessuna raccolta di tenerli, dobbiamo creare una collezione prima di passarli alla funzione, come:Qual è il modo più semplice e compatto per creare un oggetto IEnumerable <T> o ICollection <T>?
T o1, o2, o3;
Foo(new T[] { o1, o2, o3 });
Ho sempre creato un array o una lista, come I' ho fatto nell'ultimo esempio. Ma mi chiedo, c'è un modo più elegante per creare l'IEnumerable o ICollection richiesto?
Sarebbe piuttosto fresco, se si potesse fare questo:
Foo({ o1, o2, o3 });
e il compilatore creerebbe la possibile raccolta più astratto che avrebbe soddisfatto le esigenze di IEnumerable o ICollection (a seconda di quale la funzione accetta).
In ogni caso, come si passa o1, o2 e o3 a un parametro IEnumerable o ICollection?
suggerisco 'AsList()' non è un buon nome per un metodo che restituisce un 'Enumerable', non' list'! Che ne dite di 'Enumerable.Create'? –