Je pense qu'il y a un article similaire sur ce sujet mais pas exactement pareil ...Entity Framework - Héritage avec .Include?
J'ai deux entités dans mon modèle EF - appelons-les Person et Developer, ce dernier héritant de l'ancien. J'ai également une association sur le développeur appelé Qualifications. Ceci n'est pas visible sur l'entité Personne.
Si j'écris une requête par rapport au contexte, comment puis-je automatiquement inclure() les qualifications du développeur, par ex.
de l'employé dans context.Employee .include (« qualifications ») employé sélectionnez
ne fonctionne pas ... EF se plaint que la relation n'existe pas (je suppose parce qu'il n'existe pas sur Employee - mais il n'y a pas d'entité Developer sur le contexte, juste Employee).
Salut ... Il ne devrait pas essayer de charger dans les entités enfants pour la classe de base, car ils n'existent pas. Je fais le casting pour vérifier les propriétés de l'enfant etc. - mais le but de l'inclusion est de tout lire en une seule fois (gardez à l'esprit que EF ne supporte pas le chargement paresseux). –
Je pense que je serais enclin à ne pas sous-classer la personne mais plutôt créer une autre classe appelée Développeur qui a une personne, de cette façon vous pouvez probablement récupérer une collection de personne et par association être en mesure de récupérer ceux qui sont référencés par un développeur et à partir de cet objet Developer être en mesure de trouver ceux avec des qualifications. Je ne suis vraiment pas sûr qu'il soit possible de faire ce que vous essayez de faire en utilisant la hiérarchie de classe que vous avez indiquée. – Lazarus