私は Entity Framework 6、DotConnect for Oracle を使用しており、次の 2 つのクエリがあります。
まず、単純な結合 (LINQ および出力 SQL) を使用します。
リンク:
var joinQuery = Db.Products
.Join(Db.Product_Categories.AsEnumerable(), p => p.ProductID,
pc => pc.CategoryID, (pc, p) => new { pc, p })
.ToList();
出力 SQL:
SELECT * FROM Products
次に、Include を使用します。
リンク:
var includeQuery = Db.Products.Include("Product_Categories").ToList();
出力 SQL:
SELECT * FROM Products
LEFT OUTER JOIN Product_Categories
ON Products.CategoryID = Product_Categories.CategoryID
左結合に「インクルード」メソッドを常に使用できるかどうかは疑問です。この方法は、私には明確ではありません。