-2
var val1 =
                (from main in
                     (from irac in objIRAC
                      join iip in objIIP on irac.InvoiceItemID equals iip.InvoiceItemID
                      join oritc in
                          (from ritc in objRITC
                           join iips in objIIP on ritc.InvoiceItemPremiumID equals iips.InvoiceItemPremiumID
                           where ritc.ReconID == ReconId 
                                 && ritc.BookOfBusinessInvoiceItemPremiumID == BookOfBusinessInvoiceItemPremiumID 
                                 && ritc.InvoiceID == InvoiceId 
                           group new { ritc, iips } by new { ritc.ReconID, iips.InvoiceItemID }
                               into ritcs
                               select new
                               {
                                   ritcs.Key.ReconID,
                                   ritcs.Key.InvoiceItemID
                               }) on ReconId equals oritc.ReconID into oritcs // ReconId
                      from oritc in oritcs.DefaultIfEmpty()
                      where iip.InvoiceItemPremiumID == BookOfBusinessInvoiceItemPremiumID 
                      select new
                      {
                          oritc.InvoiceItemID,
                          irac.CommissionOnTypeID,
                          irac.BOBFamilyID,
                          irac.RateTypeID,
                          irac.Rate,
                          irac.CommissionAdjustmentFlag
                      })
                 join sub in objIRAC // Here getting the error
                 on new { main.InvoiceItemID, main.CommissionOnTypeID, main.BOBFamilyID, main.RateTypeID, main.Rate, main.CommissionAdjustmentFlag }
                 equals new { sub.InvoiceItemID, sub.CommissionOnTypeID, sub.BOBFamilyID, sub.RateTypeID, sub.Rate, sub.CommissionAdjustmentFlag }
                 into subs
                 from osub in subs.DefaultIfEmpty()
                 select new { osub.InvoiceItemID });
4

2 に答える 2

0

の種類をチェック

main.InvoiceItemID、main.CommissionOnTypeID、main.BOBFamilyID、main.RateTypeID、main.Rate、main.CommissionAdjustmentFlag

sub.InvoiceItemID、sub.CommissionOnTypeID、sub.BOBFamilyID、sub.RateTypeID、sub.Rate、sub.CommissionAdjustmentFlag

それらは正確に一致する必要があります。つまり、1 つのプロパティがNullable<int>で、対応するプロパティがintである場合、一致しません。すべてのプロパティがInvoiceItemID同じエンティティからのものであるため、InvoiceItemID がおそらく原因です。

于 2012-07-26T15:29:28.677 に答える