2009-01-24 7 views
2

J'ai trois tables: Scénarios, Composants et Blocs. Blocs possède une clé étrangère pour ComponentId et Components a une clé étrangère pour les scénarios.QueryObject Include Entity Framework

Les blocs ont également une clé étrangère (TreeStructureId) vers une autre table TreeStructures.

Maintenant, pourquoi ce travail:

ObjectQuery<Blocks> blocks = edumatic3Entities.Blocks.Include("TreeStructures").Include("Components.Scenarios"); 

Il charge les TreeStructures, composants et scénarios.

Cependant, cela ne fonctionne pas:

ObjectQuery<Blocks> blocks = edumatic3Entities.Blocks.Include("Components.Scenarios").Include("TreeStructures"); 

Cette charge les composants et les scénarios mais ne charge pas les TreeStructures ...

me semble très étrange ... Pourquoi est-ce?

thx, Lieven Cardoen

+0

avez-vous essayé de reproduire le problème en chargeant un edmx propre avec un db de northwind? –

+0

On dirait que j'ai résolu le problème sans savoir pourquoi. Probablement fait quelque chose de stupide. THX. –

Répondre

0

Avez-vous réglé correctement les relations entre les entités dans votre modèle logique? Est-il configuré de manière à permettre la navigation de Scenarios vers TreeStructures? Avoir une clé étrangère ne suffit pas.

+0

Oui, c'est réglé, sinon je suppose que le premier exemple de code ne fonctionnerait pas non plus. C'est la chose étrange que vous voyez. C'est comme l'ordre des questions d'inclusion ... –