Mise à JOUR: en Fait, j'ai récemment ajouté une autre Astuce que couvre le présent, et fournit une autre probablement la meilleure solution. L'idée est de retarder l'utilisation de Include() jusqu'à la fin de la requête, voir ce pour plus d'information: Astuce 22 - Comment faire inclure inclure
Il est connu de prescription dans le Cadre de l'Entité lors de l'utilisation de Include().
Certaines opérations ne sont tout simplement pas pris en charge Comprennent.
On dirait que vous avez exécuté dans un sur ces limitations, pour contourner cela, vous devriez essayer quelque chose comme ceci:
var results =
from e in dc.Entities //Notice no include
join i in dc.Items on e.ID equals i.Member.ID
where (i.Collection.ID == collectionID)
select new {Entity = e, Properties = e.Properties};
Cela va ramener les Propriétés, et si la relation entre l'entité et de Propriétés est un un-à-plusieurs (mais pas un de plusieurs à plusieurs), vous constaterez que chaque type anonyme a les mêmes valeurs:
anonType.Entity.Properties
anonType.Properties
C'est un effet secondaire d'une fonctionnalité dans le Cadre de l'Entité appelée relation de correction.
Voir cette Astuce 1 dans mon EF Conseils de série pour plus d'informations.
Alex