我无法加入。总体查询将是巨大的,但基本上,用户输入1个ID,报告数据将从数据库中填充。
可以有一对多的关系。我做了... join oneToManyTable_ in db.tableA on ID equals oneToManyTable_.DeviceId into oneToManyTable
。此表达式返回IEnumerable。现在麻烦 - 我必须加入更多表格的每个实体。我怎么做?如果我写... join anotherTable in db.tableB on oneToManyTable.ID equals anotherTable.ID into oneToManyTable
,它会对我大喊,oneToManyTable是IEnumerable。
希望你能理解我的麻烦。
答案 0 :(得分:0)
如果您可以更具体,那就更容易了。无论如何,我认为你的问题是你在第一次加入后没有使用select
。格式应该是这样的:
var output =
from class1 in context.Table1
join class2 in context.Table2
on class1.ID equals class2.DeviceID
select new { Class1 = class1, Class2 = class2 } into firstJoin
join class3 in context.Table3
on firstJoin.Class1.ID equals class3.ID
select new { firstJoin, Class3 = class3 }
这会将你的三个类加入他们的ID,并在输出中提供他们所有的属性。