J'ai 3 tables qui sont liés les uns aux autres:entités liées Chargement en EF6
Product
a beaucoup SuggestedPrices
Product
a beaucoup ProductPricing
donc je veux récupérer les prix proposés comme ceci:
await ctx.SuggestedPrices
.OrderByDescending(pp => pp.SuggestionDate)
.Include(p1 => p1.Customer)
.Include(p2 => p2.Product)
.Include(p3 => p3.Product.ProductPricing)
.ToListAsync()
Selon votre requête: i ajouté ce qui suit:
Classe de produit:
public class Product : ReportingBase {
// Product-ProductPricing -> One Product has many Prices
public virtual ICollection<ProductPricing> ProductPricing { get; set; }
// Product-SuggestedPrices
public virtual ICollection<SuggestedPrice> SuggestedPrices { get; set; }
}
classe ProductPricing:
public class ProductPricing {
// ProductPricings-Product
public virtual Product Product { get; set; }
public int ProductId { get; set; }
}
classe SuggestedPrice:
public class SuggestedPrice : EntityBase {
// SuggestedPrices-Product
public virtual Product Product { get; set; }
public int ProductId { get; set; }
// SuggestedPrices-Customer
public virtual ApplicationUser Customer { get; set; }
public string CustomerId { get; set; }
}
mais quand j'ajouter la ligne .Include(p3 => p3.Product.ProductPricing)
je reçois une erreur qui dit:
Utiliser des chemins parsemés de propriétés de navigation de référence et l'opérateur Select pour les propriétés de navigation collection
comment je me débarrasser de cette erreur?
merci à vos réponses
non, ce n'est pas mon cas, je ne peux pas mettre le ' Sélectionnez l'opérateur sur une entité comme 'Product' @FedericoDipuma – Hooman
Ajoutez la classe' SuggestedPrice' à la question, nous avons donc tous les éléments de votre requête. –
vous voici @FedericoDipuma – Hooman