Liste.Fügen Sie zu sein scheint duplizieren von Einträgen. Was ist falsch?

Habe ich eine Klasse wie folgt aus:

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

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

}

Also nenne ich "addToList" hundert mal, jedes hinzufügen ein einzigartiges Element in der Liste. Getestet hab ich meinen posten, um zu zeigen, dass, bevor ich den "addToList" - Methode, Sie sind einzigartig. Lege ich noch ein line-in zu testen, "tmp", um sicherzustellen, dass es war, was ich erwartet hatte.

Jedoch, wenn ich dies tun (können sagen, myClass-Objekt aufgerufen wird tmpClass):

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

Bekomme ich die gleiche genaue Element, und es ist der Letzte, der geschrieben wurde, in meiner Liste. Es ist, als wenn, wenn ich, ich bin überschreiben Sie die gesamte Liste mit dem letzten Eintrag habe ich ergänzt.

Helfen? Das macht keinen Sinn.
Ich habe auch versucht die Liste.Einfügen, wo ich bin immer einfügen am Ende oder an der Indexposition 0. Noch kein Würfel. Ja, bin ich doppelt Quelle meine Indizierung richtig ist und wenn ich meine test-ich bin Indizierung durch die einzelnen Elemente.

🙂

UPDATE:
Okay, ich versuchte dies und hatte immer noch das gleiche problem:

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

wird und immer noch für jeden der 100 Artikel, ich habe den gleichen string Ausgabe... ich bin sicher, ich mache etwas völlig dumm, aber ich weiß nicht, was noch. Ich bin immer noch 100% sicher, dass der richtige string ist immer übergeben, um mit zu beginnen.

-Adeena


Okay, ich versuchte dies und hatte immer noch das gleiche problem:

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

wird und immer noch für jeden der 100 Artikel, ich habe den gleichen string Ausgabe... ich bin sicher, ich mache etwas völlig dumm, aber ich weiß nicht, was noch. Ich bin immer noch 100% sicher, dass der richtige string ist immer übergeben, um mit zu beginnen.

-Adeena

  • kannst du ein bisschen mehr code könnte das problem in der Weise, die Sie hinzufügen oder Lesen von der Liste...
  • Sie noch nicht gepostet genug code!
InformationsquelleAutor adeena | 2008-12-07
Schreibe einen Kommentar