实体框架忽略内部联接

时间:2011-09-06 04:48:14

标签: c# .net entity-framework

我的LINQ查询在EF 4.1中加入了两个表,但是当我查看SQL事件探查器时,它只是从其中一个表中进行基本选择。连接被忽略。我在LINQ查询上尝试了很多变体,但得到了相同的结果。奇怪的是内部联接在我的应用程序的其他地方工作。我无法理解它。我接近放弃并只是调用存储过程但不愿意。以下是我尝试过的一些例子:

请注意,SQL事件探查器总是给我:SELECT * FROM Protocols

from s in db.Staff
join p in db.Protocols on s.ID equals p.PIID
select p

from s in db.Staff
from p in db.Protocols
where p.PIID == s.ID
select p

from s in db.Staff
from p in db.Protocols
where p.PIID == s.ID && s.ID = 99
select p

如果我最后做select sStaff表确实包括在内,但这显然不是我想要的b / c我需要协议表中的数据。

0 个答案:

没有答案