【发布时间】:2017-03-30 10:04:29
【问题描述】:
以这种方式构造的数据表有 2 个:
- 第一个 DataTable 有两个列:Customer、Email_Key
- 第二个 DataTable 有两个列:IdCustomer(等于 Email_Key)、Email
Dt1 中的 Foreach 行可以对应 Dt2 中的许多行(1 到 N)加入 CustomerId 上的 EmailKey,所以我想使用 SelectMany 函数将结果展平在 1 条记录中。我怎样才能做到这一点?
【问题讨论】:
-
D1.Email_Key是否等于D2.IdCustomer? -
是的@Fabio 我已经省略了,现在我更新
-
我不知道该怎么做。当然我不希望其他人做这项工作,不明白你为什么这么认为。
-
扁平化结果并不能真正为您买一杯咖啡。加入两个表后你有一个表(id,email[])。因此,您需要在查询中进行两个选择: table.Select(x => x.email.Select(y => .....))
-
也许你忘记了这是一个数据表,不是一个严格类型的对象,没有关系或嵌套对象。