IEnumerable<Book> _Book_IE
List<Book> _Book_List
Wie soll ich vorgehen, um _Book_List
ins IEnumerable
Format zu konvertieren ?
c#
asp.net-mvc
c#-4.0
ienumerable
Was geht
quelle
quelle
Antworten:
Sie müssen es nicht konvertieren.
List<T>
implementiert dieIEnumerable<T>
Schnittstelle so, dass sie bereits aufzählbar ist.Dies bedeutet, dass es vollkommen in Ordnung ist, Folgendes zu haben:
ebenso gut wie:
was aufgerufen werden könnte:
quelle
Sie können die Erweiterungsmethode AsEnumerable im Assembly System.Core- und System.Linq-Namespace verwenden:
Dies ändert , wie auf diesem MSDN-Link erwähnt , den Typ der Liste in der Kompilierungszeit. Dies bietet Ihnen den Vorteil, dass Sie nur Ihre benötigte Sammlung auflisten können (siehe MSDN-Beispiel hierfür).
quelle
Warum nicht einen Single Liner verwenden ...
quelle
Soweit ich weiß,
List<T>
implementiertIEnumerable<T>
. Es bedeutet, dass Sie nichts konvertieren oder wirken müssen.quelle
IEnumerable<IList<obj>>
zu setzenIEnumerable<IEnumerable<obj>>
, wird ein Compilerfehler ausgegeben, da der zweite nicht vom ersten erbt.Wenn es die generische Variante ist:
Wenn Sie in die nicht generische konvertieren möchten:
quelle
Du brauchst
um
IEnumerable
Optionen bei Ihrem zu verwendenList
.quelle