使用 EF4。我有一种情况,由于多对多表,具有显式连接的 linq to EF 查询将不起作用。我不打算打破数据库设计以适应 EF,所以我想使用 include 方法。但是,这似乎总是会生成左外连接,而我需要内连接(简单的 context.Table1s.Include("Table2")
,其中表是 1 对 1 或 1 对多将说明问题)。
有什么方法可以强制内部连接?
最佳答案
不幸的是,没有办法让 EF 以某种方式生成查询。
但是,当您添加 3 个实体时,您应该只在设计器中看到其中的 2 个,第 3 个是“关系”。因此,如果您有实体 people、books 和 Loan,则您应该只看到 people 和 books,并且 people 应该具有名为 Books() 的导航属性,它将所有与该人相关的书籍(贷款)返回给该人。
如果您愿意,也可以在该导航属性上执行 .Include("Books") 。
关于entity-framework - 使EF包含方法生成内部连接的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3461483/