我在 fluent LINQ 中遇到了将父母和孩子选择为一个的问题Ienumerable < anonymous type>
。
为简单起见:
有一个列表
commanders
(每个区域的指挥官)。每个指挥官都有自己的
List of Soldiers
。(并且每个Soldier
人都有一个 bool 属性IsCanWinWar
和一个Tool
他用来战斗的)
我想列出每个指挥官(谁有一个或多个可以赢得战争的士兵)和那个士兵使用的一个tool
名字。
我不在乎一个指挥官是否有超过一个可以赢得战争的士兵。
指挥官所需要的只是一名士兵(谁可以赢得战争)的tool
(不管是哪个工具)。
输出是Ienumerable < anonymous type>
匿名类型的位置:
{
theCommander = [commanderObject] ,
theToolName = [the tool name ]
}
我做了一些事情,selectMany
但它又长又丑。
是否有任何简短的查询(流利的查询)可以以更短的方式产生相同的结果?
public class Commander
{
public List<Soldier> lstSoldiers =new List<Soldier>(); //from db actually.
}
public class Soldier
{
public bool IsCanWinWar { get; set; }
public string Tool { get; set; }
}
void Main()
{
List<Commander> lstCommanders = new List<Commander>(); //data source is actually from db.
var MyIernumerableOfAnonymouseTypes= ?
}