我有两个表:有什么不对这种LINQ查询
Team: teamId, teamName
Player: playerId, teamId, playerName
我想通过playerName的teamName。我写了两个querys,其中一个不起作用。
var query = from t in dc.Teams
where t.teamId == ((from p in dc.Players
where p.playerName == "kobe"
select p.teamId).SingleOrDefault())
select t.teamName; //Doesn't work
var query = from t in dc.Teams
join p in dc.Players
on t.teamId equals p.teamId
where p.playerName == "kobe"
select t.teamName; //Works
任何人都可以告诉我为什么第一个查询无法工作?
您应该已经知道现在如何缩进代码... – gdoron
错误消息?看起来你正在尝试在SingleOrDefault()的调用之后进行投影(select)。这是没有意义的。 – Marcote
您是否遇到错误,或者它只是没有返回您期望的内容? –