【发布时间】:2011-01-21 21:04:45
【问题描述】:
假设我们有一些非规范化的数据,像这样:
List<string[]> dataSource = new List<string[]>();
string [] row1 = {"grandParentTitle1", "parentTitle1", "childTitle1"};
string [] row2 = {"grandParentTitle1", "parentTitle1", "childTitle2"};
string [] row3 = {"grandParentTitle1", "parentTitle2", "childTitle3"};
string [] row4 = {"grandParentTitle1", "parentTitle2", "childTitle4"};
dataSource.Add(row1);
我需要对其进行规范化,例如让 IEnumerable 填充 Child.Parent 和 Child.Parent.GrandParent。
命令式的方式或多或少是清楚的。 Linq 会更短吗?
在一个查询中效果更好,并且应该可以针对更多实体进行扩展。
我尝试过单独创建 IEnumerable
请提示一下,这可以通过功能方式实现吗?
【问题讨论】:
-
问题是如何创建和链接没有重复的实体。 Select(new Parent{GrandParent = new GrandParent}) 或者我错过了什么?
标签: linq normalization