我需要对数据库中的表列执行交叉连接。我使用 linq 和 C# 来做到这一点。这是我写的代码:
var res = (from item_1 in set1
join item_2 in set_2 on new
{
item_1.columnA,
item_1.columnB,
item_1.columnC,
item_1.columnD,
item_1.columnE,
//etc...
}
equals new
{
item_2.columnA,
item_2.columnB,
item_2.columnC,
item_2.columnD,
item_2.columnE,
//etc...
}
select new { item_1,item_2};
我有一个 asp.net 页面,用户可以在其中选择他们希望在哪些列上执行交叉连接。查询应该反映他们的选择。一些用户只希望使用其中的 2 个列,而其他用户会选择 10 个。
我显然不想在某些 switch 语句中重复此查询并包含选定的列。如果有一种通用的方法可以做到这一点,我正在徘徊。传递一个 lambda 表达式......我只是不确定应该如何完成。任何帮助将不胜感激。