LoadWithおよびAssociateWithDataLoadOptionsを使用して、エンティティとその関連プロパティ(基本的な1対多)を熱心にロードしようとしています。ただし、生成されたSQLを確認したところ、LoadWithによって生成されたステートメントはすべて左外部結合であることがわかりました。
したがって、以下のコードは、関連するプロパティのデータをフェッチするために、すべての左外部結合を生成します。何故ですか?そして、代わりにLoadWithを取得して内部結合を生成する方法はありますか。単純な「Linq結合」でこれを実行できることはわかっていますが、LoadWith構文がいかにクリーンで単純であるかが気に入っています。前もって感謝します
dataLoadOptions.LoadWith(Of TCustomer)(Function(c) c.Orders)
dataLoadOptions.LoadWith(Of TOrder)(Function(o) o.Products)
dataLoadOptions.LoadWith(Of TProduct)(Function(p) p.ProductTranslations)
dataLoadOptions.AssociateWith(Of TProduct)(Function(c) c.ProductTranslations.Where(Function(t) t.Language = "En"))