我正在尝试将以下行转换为LINQ,建议的方法是什么?我有以下代码:
IEnumerable<person> result = Enumerable.Empty<person>();
var list1 = getlist1(..)
var repository = new Repository();
for(int i = 0; i < list1.Length; i++)
{
result = result.Union(repository.GetList(list1[i].ID));
}
我想为list1中的每个项调用repository.GetList,并将结果添加到列表中。
答案 0 :(得分:2)
IEnumerable<person> result = list1.SelectMany(i => repository.GetList(i.ID));
如果你想把它们作为一个清单:
IList<person> result = list1.SelectMany(i => repository.GetList(i.ID)).ToList();