我有一个对象列表A.每个A包含一个B列表。每个B包含一个C列表。 我想知道是否有可能在另一个类似对象列表中使用linq以优雅的方式转换它,每个列表包含一个E列表,每个列表包含一个F列表。 比如说,为了这个例子,每个类只有一个数字ID和一个字符串描述(当然还有A,B,D,E中的子列表)。
答案 0 :(得分:0)
假设D,E和F具有接受ID,描述的构造函数,并且在D和E的情况下,分别为IEnumerable
的B和C,您可以使用:
Dim list As List(Of A)
Dim listSummary As List(Of D) = list.[Select](
Function(a) New D(a.Id, a.Description, a.Children.[Select](
Function(b) New E(b.Id, b.Description, b.Children.[Select](
Function(c) New F(c.Id, c.Description)))))).ToList()