我有一个看起来像这样的对象:
Tree {
String Name;
Int ID;
List<SubObjects> SubObjects
}
SubObjects {
int Level;
string Name;
}
我有以下形式的信息,List<Output>
即 where Output
is:
Output {
String TreeName;
Int TreeID;
Int SubObjectLevel;
String SubObjectName;
}
本质上,树以以下格式表示
Tree1 TreeID1 Level1 SubObject1
Tree1 TreeID1 Level2 SubObject2
Tree1 TreeID1 Level3 SubObject3
Tree1 TreeID1 Level1 SubObject4
我想编写一个 LINQ 查询来填充 Tree,但我被困在 GroupBy 中。这是一个非常基本的问题,但我正在学习 LINQ,任何帮助将不胜感激。
谢谢!
编辑:
到目前为止,这是我的代码
var trees =
from o in output
select new Tree {
Name = o.TreeName,
ID = o.TreeID,
SubObjects = //somehow group them
}
我也试过
var trees =
from o in output
group o in o.TreeID into levels
select new Tree {
Name = //at this point o.TreeName is not available
}