为什么我不能在c#列表中保存列表
本文关键字:列表 保存 不能 为什么 | 更新日期: 2023-09-27 18:16:58
我是c#
的新手,写这个类:
public class MANAGER
{
public string VersionName { get; set; }
public Double Value { get; set; }
}
使用如下:
List<MANAGER> lstSummary = new List<MANAGER>();
MANAGER summary = new MANAGER();
summary.VersionName = "12";
summary.Value =12;
lstSummary.Add(summary);
summary.VersionName = "13";
summary.Value = 19;
lstSummary.Add(summary);
但是up代码只保存最新的类记录,意味着只保存VersionName=13 and Value=19
,我怎么解决这个问题?
你必须像这样重新实例化summary
变量:
MANAGER summary = new MANAGER();
summary.VersionName = "12";
summary.Value =12;
lstSummary.Add(summary);
summary = new MANAGER(); // <-- add this
summary.VersionName = "13";
summary.Value = 19;
lstSummary.Add(summary);
另一个答案中描述的问题是,您多次将同一对象添加到列表中,因此您需要有一个单独的对象。你可以这样做,或者根本不使用显式变量,因为c#允许初始化。这将是几乎相同的逻辑,但更漂亮和可读性。
var lstSummary = new List<MANAGER>
{
new Manager
{
VersionName = "12",
Value = 12
},
new Manager
{
VersionName = "13",
Value = 19
}
}