List.Add scheint Einträge zu duplizieren. Was ist los

Ich habe eine Klasse wie diese:

public class myClass
{
  public List<myOtherClass> anewlist = new List<myOtherClass>;

  public void addToList(myOtherClass tmp)
  {
    anewList.Add(tmp);
  }

}

So rufe ich "addToList" hundertmal auf und füge der Liste jeweils ein eindeutiges Element hinzu. Ich habe meine Elemente getestet, um zu zeigen, dass sie eindeutig sind, bevor ich die Methode "addToList" ausführe. Ich habe sogar eine Zeile eingefügt, um "tmp" zu testen, um sicherzustellen, dass es das war, was ich erwartet hatte.

Allerdings, wenn ich das tue (sagen wir myClass-Objekt heißt tmpClass):

int i = tmpClass.anewList.Count();
for (int j = 0; j<i; j++)
{
   //write out each member of the list based on index j...
}

Ich erhalte genau das gleiche Element und es ist das letzte, das in meine Liste geschrieben wurde. Es ist, als würde ich beim Hinzufügen die gesamte Liste mit dem zuletzt hinzugefügten Element überschreiben.

Hilfe? Das macht keinen Sinn. Ich habe auch List.Insert ausprobiert, wobei ich immer am Ende oder am Index 0 einfüge. Immer noch keine Würfel. Ja, ich beziehe eine doppelte Quelle, deren Indizierung korrekt ist, und wenn ich meinen Test durchführe, indiziere ich jedes der Elemente.

:)

UPDATE: Okay, ich habe es versucht und hatte immer noch das gleiche Problem:

foreach(myOtherClass tmpC in tmpClass.anewList)
{    
    Console.WriteLine(tmpC.theStringInMyClass.ToString());
}

und immer noch für jedes der 100 Elemente habe ich die gleiche String-Ausgabe ... Ich bin sicher, ich mache etwas völlig Dummes, aber ich weiß noch nicht, was. Ich bin mir immer noch zu 100% sicher, dass die richtige Zeichenfolge übergeben wird.

-Adeena

Okay, ich habe es versucht und hatte immer noch das gleiche Problem:

foreach(myOtherClass tmpC in tmpClass.anewList)
{
    Console.WriteLine(tmpC.theStringInMyClass.ToString());
}

und immer noch für jedes der 100 Elemente habe ich die gleiche String-Ausgabe ... Ich bin sicher, ich mache etwas völlig Dummes, aber ich weiß noch nicht, was. Ich bin mir immer noch zu 100% sicher, dass die richtige Zeichenfolge übergeben wird.

-Adeena

Antworten auf die Frage(12)

Ihre Antwort auf die Frage