EF7 Exclure la classe / DbSet de l'opération de migration Add

code-first-migrations entity-framework-core

Question

(Version 7.0.0-beta5)

Existe-t-il un moyen d’exclure une classe ou un DbSet de l’évaluation de la commande migration add ?

La base de données que je construis inclura des tables qui sont répliquées à partir d'un autre environnement. Ils doivent être inclus dans DbContext pour pouvoir être interrogés et joints, mais aucune migration ne doit être générée pour eux.

Quelle est la meilleure pratique dans cette situation?

Réponse acceptée

À partir de la version bêta 6, ce qui me convient le mieux est de veiller à ce que DbContextModelSnapshot inclue des mappages pour les entités répliquées.

Une fois les entités mappées, le processus d’échafaudage de migration compare l’instantané du modèle aux entités pour déterminer s’il ya des modifications. Étant donné que les classes d'entité correspondent à l'instantané du modèle, aucune migration n'est générée concernant ces entités. Lorsque DbContextModelSnapshot est régénéré et remplacé, il conserve les mêmes mappages car il n'y a pas eu de changement.

De plus, il se peut qu’il existe à l’avenir une fonction utile, comme le montre ce numéro - aucune promesse cependant, et pas pour la première version. https://github.com/aspnet/EntityFramework/issues/2725


Réponse populaire

Vous pouvez supprimer manuellement les créations ou les modifications du fichier de migration.




Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi