将内容添加到列表

时间:2020-03-24 13:12:37

标签: c#

如何在不删除先前内容的情况下继续在列表中添加foreach的内容?

lSave.Add(NextKey, new LSave());    

foreach (var container in corpse.containers)   
    lSave[NextKey].items = GetItems(container).ToList();

和结构

public Dictionary<uint, LSave> lSave = new Dictionary<uint, LSave>();
public class LSave
{
    public List<LItems> items;
    public LSave() { }
}
public class LItems
{
    public string name;
}

IEnumerable<LItems> GetItems(ItemContainer container)

谢谢

1 个答案:

答案 0 :(得分:0)

如果要将更多项目添加到字典中的特定键,请尝试以下操作:

foreach (var container in corpse.containers)
{
    LSave item;
    if (!lSave.TryGetValue(NextKey, out item))
    {
        item = new LSave();
        item.items = new List<LItems>();
        lSave.Add(NextKey, item);
    }

    item.items.AddRange(GetItems(container));
}

如果需要,它将LSave添加到NextKey,然后将GetItems(container)的结果添加到该items的{​​{1}}字段中。

相关问题