两张桌子:
表A有以下数据:
Type1 A
Type1 B
Type1 C
Type1 D
表B有以下数据:
Type2 X
Type2 Y
Type2 U
Type2 V
我想获得以下输出:
new { A, X }
new { B, Y }
new { C, U }
new { D, V }
使用Entity Framework可以实现吗?我现在面临的问题是有8个不同的实体表,每个表都代表一种类型。该应用程序有一个索引页面,我们希望在索引页面上显示每个表的6个项目。我们当然可以一个接一个地做到这一点,但这会使DB达到8次,这可能效率不高。使用EF 6解决此类问题的正确方法是什么?
答案 0 :(得分:0)
试试这个:
var AX = db.tableA
.Join(
tableB,
foo1 => foo1.A,
foo2 => foo2.X,
(foo1, foo2) => new { foo1, foo2}
.ToList()
var BY = db.tableA
.Join(
tableB,
foo1 => foo1.B,
foo2 => foo2.Y,
(foo1, foo2) => new { foo1, foo2}
.ToList()
var CU = db.tableA
.Join(
tableB,
foo1 => foo1.C,
foo2 => foo2.U,
(foo1, foo2) => new { foo1, foo2}
.ToList()
var DV = db.tableA
.Join(
tableB,
foo1 => foo1.D,
foo2 => foo2.V,
(foo1, foo2) => new { foo1, foo2}
.ToList()
答案 1 :(得分:0)
如果您使用 EF ,那么您的所有表格中都可能包含 #contact-form{
.border();
}
PK 。如果您从未从这些表中删除位于其他行之间的分隔行,则可以使用 Id 列进行连接条件。您可以使用相同的方式将此示例简单地扩展到所需数量的表。
int