J'ai cet objet:
IEnumerable<string> m_oEnum = null;
et je voudrais l'initialiser. Essayé avec
IEnumerable<string> m_oEnum = new IEnumerable<string>() { "1", "2", "3"};
mais il dit "IEnumerable ne contient pas de méthode pour ajouter une chaîne. Une idée? Merci
IEnumerable<T>
est une interface. Vous devez vous lancer avec un type concret (qui implémenteIEnumerable<T>
). Exemple:la source
Comme
string[]
implémente IEnumerablela source
IEnumerable
est juste une interface et ne peut donc pas être instanciée directement.Vous devez créer une classe concrète (comme a
List
)vous pouvez ensuite le transmettre à tout ce qui attend un fichier
IEnumerable
.la source
la source
Vous ne pouvez pas instancier une interface - vous devez fournir une implémentation concrète de IEnumerable.
la source
Vous pouvez créer une méthode statique qui retournera le IEnumerable souhaité comme ceci:
Sinon, faites simplement:
la source
IEnumerable est une interface, au lieu de chercher comment créer une instance d'interface, créez une implémentation qui correspond à l'interface: créez une liste ou un tableau.
la source