私はにtableAとTABLEBなぜnhibernate LINQは簡単な外部結合をサポートしていません(外部結合テーブルにwhere句が指定されています)。
にtableAがB_ID性質を持っています。
IEnumerable<A> a = Session.Query<A>().Fetch(r=>r.B);
しかし、私のような何かをしたい:
このクエリは正常に動作します
IEnumerable<A> a = Session.Query<A>().Where(r=>r.B.Active).Fetch(r=>r.B);
それは私がこれを行う際に何がある場合、それはもはや、単純な外部結合をしないとないように思えますテーブルBのアクティブなレコード、私は結果が得られません。
私はまだ結果を返しますが、AエンティティのBプロパティをnullにする純粋な外部結合を実行したいと思います。
nhibernate LINQは、外部結合テーブルにwhere句を設定するこの機能をサポートしていますか?
実行されたSQL文と実行したいSQL文を表示できますか? – sisve
@Simon Svensson - 非常にシンプルで、上のコードは結合の外側にはないので、B.Activeレコードがない場合は行を返しません。 – leora