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)
谢谢
解决方案
如果要向字典中的特定键添加更多项目,请尝试以下操作:
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
to NextKey
,然后将结果添加GetItems(container)
到 that 的items
字段LSave
。
推荐阅读
- c# - OdbcConnection 和 SqlConnection 的区别
- c++ - 仅在运行代码分析时添加 /Wall?
- ios - Core Data 在访问上下文时崩溃
- python - alert_is_present() 和 switch_to_alert() 的函数
- nginx - 在 NginX 中更改服务器签名
- wordpress - Wordpress Migration with lingering reference
- reporting-services - SSRS join(Parameters!ACCNUMBER.Value, ",") 生成渲染错误
- spring-boot - 如何使用 Axon Server 上播事件?
- osmdroid - OSMDroid 离线地图未加载
- php - Laravel 6 PHPUnit 测试 - 找不到驱动程序(SQL:PRAGMA foreign_keys = ON;)