Hinzufügen, um eine ICollection
Ich bin derzeit am schreiben einer C# - Projekt, und ich brauche, um zu tun unit-Tests für das Projekt. Für eine der Methoden, die ich brauche, um unit-test nutze ich eine ICollection, die normalerweise bevölkert von den ausgewählten Elementen einer list-box.
Wenn ich ein unit-test für die Methode, die es schafft, die Linie
ICollection icollection = null; //Initialise to an appropriate value
Wie kann ich erstellen Sie eine Instanz dieser ICollection und ein Element der Kollektion?
InformationsquelleAutor Boardy | 2011-10-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
ICollection
ist eine Schnittstelle können Sie nicht instantiieren Sie es direkt. Sie müssen instanziieren einer Klasse, dieICollection
; zum BeispielList<T>
. Auch die, ICollection
interface nichtAdd
Methode -- Sie müssen etwas implementiert, dassIList
oderIList<T>
.Beispiel:
implementiert
IList
, das ist ein Nachkomme vonICollection
. SoList<object>
ist auch einICollection
.Die Art und Weise @Donut schrieb den Kommentar fühle ich mich QED ist erforderlich, am Ende des es.
Wer hat gesagt, dass "ICollection-Schnittstelle nicht über eine Add-Methode". Hat u siehe diesen link msdn.microsoft.com/en-us/library/63ywd54z.aspx
Dieser link bezieht sich auf die
ICollection<T>
- Schnittstelle, die ist anders als dieICollection
- Schnittstelle. Sie sind richtig, dassICollection<T>
enthält eineAdd()
Methode; jedochICollection
nicht: msdn.microsoft.com/en-us/library/...InformationsquelleAutor Donut
Im Gegensatz zu einigen der Kommentare, die
IList<T>
tut implementierenICollection
zumindest so weit wie ich das beurteilen kann.InformationsquelleAutor Altair
Lassen Sie uns sagen, Sie haben eine Sammlung von strings, dann wird der code sein:
InformationsquelleAutor Fischermaen
Ich glaube, Sie müssen die Erben die
ICollection
interface in einer neuen Klasse bevor Sie es verwenden können.Wie ICollection implementieren
InformationsquelleAutor Neil Knight
Was Sie tun können, ist eine Art, die ICollection implementiert und von dort aus nutzen es in Ihren Tests. Eine Liste oder Sammlung würde die Arbeit zum erstellen einer Instanz des Objekts. Ich denke, eine andere Frage wäre, was für ein Typ sind die Elemente in der Liste angezeigt. Hinzufügen von Elementen zu der Liste oder Sammlung ist ziemlich trivial, nur mit dem .Add (...) - Methode.
Ist es etwas genauer Sie brauchen, zu tun mit diese Sammlung?
InformationsquelleAutor ShelbyZ