2014-10-01 97 views
0

我無法進行連接。總體查詢將會很大,但基本上,用戶輸入1個ID,報表數據將從數據庫填充。Linq to SQL一對多對多關係加入

可以有一對多的關係。我做了... 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

如果你可以更具體一些,那會更容易。無論如何,我認爲你的問題是,你第一次加入後不會使用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,也給你所有的屬性輸出。