我如何在linq中执行此操作?
var p = new pmaker();
foreach (var item in itemlist)
{
var dlist = new List<Dummy>();
foreach (var example in item.examples)
{
dlist.Add(example.GetDummy());
}
p.AddStuff(item.X,item.Y,dlist);
}
// .. do stuff with p
Run Code Online (Sandbox Code Playgroud)
怎么样:
var qry = from item in itemlist
select new {item.X, item.Y,
Dummies = item.examples.Select(
ex => ex.GetDummy())
};
foreach (var item in qry)
{
p.AddStuff(item.X, item.Y, item.Dummies.ToList());
}
Run Code Online (Sandbox Code Playgroud)
不确定这样更清楚,但是......我个人认为我可能只是使用原始foreach版本...可能会分开GetDummy一点:
foreach (var item in itemlist)
{
var dlist = item.examples.Select(ex => ex.GetDummy()).ToList();
p.AddStuff(item.X,item.Y,dlist);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7312 次 |
| 最近记录: |