Dire que j'ai 2 tables: message et SuperMessagePuis-je mélanger Table par hiérarchie et Table par type dans Entity Framework?
et 3 entités: Message (base (non abstraite)), Commentaire (message) hérite de et SuperMessage (hérite de message)
message a non champ MessageType nullable qui est utilisé comme discriminateur.
- MessageType = 1 signifie qu'il est un message
- MessageType = 2 signifie qu'il est un commentaire
- MessageType = 3 ET et rejoindre le SuperMessage signifie qu'il est un SuperMessage
Le problème est que je ne peux pas spécifier une condition sur MessageType de la section Détails de mappage de SuperMessage car il ne peut pas voir le champ MessageType et je ne peux pas l'ignorer.
Comment puis-je les faire fonctionner côte à côte?
MISE À JOUR Construire Erreur:
Erreur 3014: Problème de fragments de cartographie: La clé étrangère 'contrainte de clé étrangère 'FK_SuperMessage_inherits_Message' de la table SuperMessage (ID) à la table Message (MessageId):' est pas appliquée dans le modèle. Une relation d'association ou d'héritage doit être créée pour appliquer cette contrainte.
Si vous ignorez simplement MessageType pour SuperMessage et permettre à la L'héritage TPT à lancer, fonctionne-t-il ou obtenez-vous une erreur? – jeremcc
@jeremcc oui je l'ai essayé et j'obtiens l'erreur (que je viens d'ajouter ci-dessus) – BritishDeveloper
Jouer avec un exemple simple moi-même. Je vais vous laisser savoir ce que je trouve. – jeremcc