如何基于多列将加入的2个数据表与Join连接?
我正在使用C#。
在这里找到了一些解决方案:Left Outer on two columns LINQ但是出现编译时错误。
dtblLeft:
id col1 col2
1 1 S1
2 1 any2
3 2 S2
4 3 S3
5 3 any2
6 5 any2
7 any2
dtblRight:
col1 col2 Result
1 S1 ConfigValue1
2 S2 ConfigValue12
3 S3 ConfigValue13
4 S4 ConfigValue14
需要对col1和col2值进行左连接。
结果
id col1 col2 Result
1 1 S1 ConfigValue1
2 1 any2
3 2 S2 ConfigValue2
4 3 S3 ConfigValue3
5 3 any2
6 5 any2
7 any2
答案建议How to do joins in LINQ on multiple fields in single join:
var result = from x in entity
join y in entity2
on new { x.field1, x.field2 } equals new { y.field1, y.field2 }
如果我将它与DataTable一起使用,如
var result = from x in entity
join y in entity2
on new { x[field1], x[field2] } equals new { y[field1], y[field2] }
给出了编译错误。