So fügen Element IList<T>
Ich habe eine IList .
IList<MyClass> MyList
{
get;
set;
}
Kopiere ich eine Liste von Myclass auf dieser Seite laden
MyList=Listofmyclass;
Möchte ich ein neues Element hinzufügen zur MyList
MyList.Add(NewItem);
aber wenn ich diesen code bekomme ich Fehler "Sammlung war eine Feste Größe."
Hinzufügen neues Element IList?
wo ist die definition von Listofmyclass?
Ich definition im laden, bevor Sie von MyList=Listofmyclass;
Was aber ist die
Ich definition im laden, bevor Sie von MyList=Listofmyclass;
Was aber ist die
Listofmyclass
? Vielleicht haben Sie MyList is MyClass[]
und dann kann man nicht hinzufügen. Sehen Sie die gelbe box auf der MSDN Array doc, wo es heißt: Die wichtige Sache zu beachten sind, wenn Sie werfen ein array an eine dieser Schnittstellen ist, dass die Mitglieder, die hinzufügen, einfügen oder entfernen von Elementen werfen NotSupportedException
.InformationsquelleAutor Niloo | 2012-11-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich gehe davon aus, dass
MyList
ist einMyClass[]
. Ein array hat eine Feste Größe, Sie können keine Elemente hinzufügen. Stattdessen würde ich zuordnenList<MyClass>
statt, das unterstützt es, wenn möglich.Array
implementiertIList
:-/Ja, da.
Huh, BIS einige andere Dinge auch 🙂 Cheers Tim.
InformationsquelleAutor Rango
Wahrscheinlich ist Sie eine Feste Größe haben die Umsetzung der Listofmyclass, in anderen Worten:
dies zu verhindern addition/entfernen von Listen-Elementen.
Sehen hier
IList
aus .NET 1. Das gleiche gilt für dieIList<T>
.NETZ 2 und so weiter, außer, dass die generische Schnittstelle nicht über einIsFixedSize
Eigenschaft.InformationsquelleAutor CloudyMarble
Können Sie nur Elemente hinzufügen, um eine
IList
wenn der tatsächliche Typ der Sammlung unterstützt das hinzufügen. In Ihrem Fall ist es nicht. Wenn Sie zum Beispiel ein array verwenden, es unterstützt nicht hinzufügen.Können Sie die
ToList
Methode, um Ihre Sammlung in einer Liste, die unterstützt hinzufügen:InformationsquelleAutor Guffa