当我尝试加入表格时
var query =
from foo in db.Foos
from bar in db.Bars
where foo.ID == bar.FooID
where foo.ID == 45
select bar;
query.toArray()
我收到了这样的错误
Unable to create a constant value of type 'Bar'. Only primitive types ('such as Int32, String, and Guid') are supported in this context.
答案 0 :(得分:24)
请尝试改为:
var query =
from foo in db.Foos
join bar in db.Bars on foo.ID equals bar.FooID
where foo.ID == 45
select bar;
无论如何,我建议你在EDM设计师中模拟Foo和Bar之间的关系,这样你就不需要显式连接了:
var query =
from foo in db.Foos
where foo.ID == 45
from bar in foo.Bars
select bar;