1

DF 4 対 2010 で作業します。SalSalesOrderFinancial テーブルとの SalSalesOrderDetail の結合に関する問題に直面します。

ここに画像の説明を入力

SalSalesOrderFinancial の 1 つのレコードには、SalesOrderDetailID=null があります。SalesOrderDetailID が SalSalesOrderFinancial に存在しないレコードを取得したい。

目的の出力を得るには、以下の linq 構文を記述します。機能しています。より良い結合構文を探しています。1 つの結合で目的を達成する方法はありますか。

      var tempBDwithSODetail = (from p in this.Context.SalSalesOrderFinancials
                                          where p.SalesOrderDetailID != null
                                          select p.SalesOrderDetailID).AsEnumerable();

                var tempBDwithOutSODetail = (from p in this.Context.SalSalesOrderFinancials where p.SalesOrderDetailID == null select p).AsEnumerable();
                var querySOD = (this.Context.SalSalesOrderDetails.Where(item => !tempBDwithSODetail.Contains(item.SalesOrderDetailID))).AsEnumerable();

var tempBDetail = (from p in querySOD
                  join q in tempBDwithOutSODetail on p.SalesOrderID equals q.SalesOrderID
                                   where q.SalesOrderDetailID == null
                                   select new
                                   {
                                       q.SalesOrderID,
                                       p.SalesOrderDetailID,
                                       q.CurrencyID,
                                       q.BillingPolicyID,
                                       q.BillTypeID,
                                       q.BillingTypeID
                                   }).AsEnumerable();

ご不明な点がございましたら、お問い合わせください。よろしくお願いいたします。

4

1 に答える 1