J'ai un modèle Entity avec Factures, AffiliateCommissions et AffiliateCommissionPayments.Linq to Entity Left Outer Join
facture à AffiliateCommission est un à plusieurs, AffiliateCommission à AffiliateCommissionPayment est aussi un à plusieurs
Je suis en train de faire une requête qui renverra toutes les factures qui ont une commission, mais pas nécessairement un commissionPayment connexe. Je veux montrer les factures avec des commissions si elles ont un paiement de commission ou non.
requête ressemble quelque chose comme:
using (var context = new MyEntitities())
{
var invoices = from i in context.Invoices
from ac in i.AffiliateCommissions
join acp in context.AffiliateCommissionPayments on ac.affiliateCommissionID equals acp.AffiliateCommission.affiliateCommissionID
where ac.Affiliate.affiliateID == affiliateID
select new
{
companyName = i.User.companyName,
userName = i.User.fullName,
email = i.User.emailAddress,
invoiceEndDate = i.invoicedUntilDate,
invoiceNumber = i.invoiceNumber,
invoiceAmount = i.netAmount,
commissionAmount = ac.amount,
datePaid = acp.paymentDate,
checkNumber = acp.checkNumber
};
return invoices.ToList();
}
Cette requête ci-dessus ne renvoie les éléments avec un AffiliateCommissionPayment.
Merci, j'utilise EF2 et DefaultIfEmpty n'est pas supporté. – radman