1

J'ai enfin réussi à maîtriser le chargement d'informations à l'aide de Silverlight, des entités ADO.NET et des services RIA, mais je n'arrive toujours pas à obtenir les informations sur les relations. Par exemple, imaginez un produit et ce produit a plusieurs catégories d'attributs. Par exemple, imaginez un produit. Nous les appellerons ProductAreas.Services RIA et relations dans Silverlight 3

L'objet produit possède une propriété appelée ProductAreas (en raison de leur relation), mais quand je l'appelle:

ctx.Load(GetProductsQuery()); 

(Où CTX est mon DomainContext), les objets Produit réexpédié ont la propriété ProductAreas, mais il ne contient aucun élément, ce qui est un problème très sérieux dans mon cas. Donc, la question est: Comment puis-je avoir accès à ces relations?

Répondre

2

Je ne suis pas sûr de ce que fait votre méthode GetProductsQuery(), mais vous devriez pouvoir utiliser la méthode .Include('ProductAreas') dans votre requête. Si vous mettez à jour votre question avec le contenu de cette méthode, j'essaierai d'en faire plus.

+1

Merci, Ben! C'est bien. Tu m'as conduit exactement là où j'avais besoin d'aller. J'ai développé votre réponse un peu plus bas, car le simple ajout de l'inclusion n'a pas permis d'obtenir l'information, mais cela en conjonction avec l'attribut include. –

2

Ce n'est pas techniquement la façon dont ce système est censé fonctionner, mais je voulais développer votre réponse, tout en lui accordant le mérite qu'il mérite de me conduire là où je devais être.

Les solutions était à, dans la méthode utilisation

return this.ObjectContext.Products.Include("ProductAreas"); 

au lieu de

return this.ObjectContext.Products; 

GetProductsQuery() Et dans le fichier de métadonnées, allez à la classe des produits et, juste au-dessus de la propriété ProductAreas ajoutez [Include()], de sorte qu'il ressemble à:

[Include()] 
public EntityCollection<ProductAreas> ProductAreas; 
Questions connexes