0
我在使用實體框架v6將T-SQL查詢轉換爲linq時遇到了一些麻煩。實體框架加入多對多
我工作的T-SQL查詢看起來是這樣的:
SELECT
[Person].*, [Person_Firm_PersonResponsibility].*
FROM
[Person]
JOIN
[Person_Firm_PersonResponsibility] ON [Person].ID = [Person_Firm_PersonResponsibility].PersonID
WHERE
[Person_Firm_PersonResponsibility].FirmID = 389
AND [Person].ID = 330
在LINQ我有以下幾點:
using (var ctx = new MyContext())
{
var result = (from p in ctx.People
join r in ctx.Person_Firm_PersonResponsibility on p.ID equals r.PersonID
where r.FirmID == firmId && p.ID == personId
select p)
.Include("Person_Firm_PersonResponsibility.PersonResponsibility")
.Include("Person_Firm_PersonResponsibility")
.FirstOrDefault();
return result;
}
我的目標是隻得到與責任特定人的特定公司(公司ID)公司,人員和責任之間的關係是我所查詢的多對多Person_Firm_PersonResponsibility
表。
查詢「有效」的意思是我得到了這個人,但它包括他/她對於任何公司的所有責任,而不是具體公司(firmId)我試過刪除.Include(「 ),但那並沒有。
有誰知道如何做到這一點?
沒有我的回答解決問題了嗎? – 2014-11-11 09:56:30
對不起,延遲時間太長了,Steve:(是的,它的確解決了我的問題,非常感謝!:-) – 2014-12-02 07:51:53