0

LINQ to Entities で Left Join のような式を実行しようとしましたが、DefaultIfEmpty メソッドは予想とは異なり、Readings テーブルに一致しない各 CounterNo に対して空の行を返します。

var leftjoin = from counter in database.Counters
               join reading in database.Readings
               on counter.CounterNo equals reading.CounterNo into gj
               from x in gj.DefaultIfEmpty()
               select x;

このようにして、Counters テーブルのどの行に対応する Readings テーブルの行がないかわかりません。

どうすればこれを機能させることができますか?

4

1 に答える 1

0

に追加したくないだけで、代わりに左側のテーブルの各アイテムを右側のテーブルのアイテムのグループfrom x in gj.DefaultIfEmpty()とペアにしたいようです(そのグループには要素がゼロの場合があります。一致するアイテムはありません)。これは、その行を削除したときに得られる動作とまったく同じです。

于 2014-05-08T18:45:51.920 に答える