上一个读取对象正在替换集合ArrayList中的所有项

时间:2013-11-11 07:55:46

标签: c# asp.net collections arraylist

我正在使用一个集合类,我将使用数组列表迭代地添加对象详细信息。

但以下陈述的问题是: InvoiceList.Add(objInvoice);

每次迭代添加objInvoice项时,invoiceList所有内部列表项都将被最后一次objInvoice读取替换。

[0] - 替换为上次读取的objInvoice值 [1] - 替换为上次读取的objInvoice值

可能的原因是什么?

我已经检查过它们之间的任何objInvoice初始化。但没有。我完全对这种情况感到困惑。

提前致谢

非常感谢任何帮助

1 个答案:

答案 0 :(得分:4)

您很可能正在创建一个objInvoice项目,并将其重复添加到同一列表中。在这种情况下,引用每次都是相同的,因此您有一个项目列表,每个项目都引用相同的objInvoice。

您需要确保为每次迭代制作并填充新的objInvoice项目。然后,您将看到列表中每个项目的显示方式不同。