Migrations EF – Base de données existante mais que vous souhaitez déployer à partir de zéro

StackOverflow https://stackoverflow.com//questions/11664346

  •  11-12-2019
  •  | 
  •  

Question

J'ai une base de données de développement existante avec un schéma et des données.J'ai créé les classes à l'aide de l'utilitaire Microsoft (classes CodeFirst).J'ai ensuite activé les migrations.

Maintenant, je suis perplexe quant au comportement de -IgnoreChanges.Si la migration initiale n'a pas de logique Up() et Down(), que se passera-t-il lorsque je déploierai sur une base de données de production ?

EF ignore-t-il simplement toutes les migrations et construit-il simplement à partir de zéro directement à partir du modèle ?

Si je ne mets pas -IgnoreChanges, toute la logique Up() et Down() est là.Mais lors de Update-Database, il lève une exception concernant une table du même nom déjà existante.

J'utilise EF 5 RC.

Était-ce utile?

La solution

IgnoreChanges est destiné aux scénarios dans lesquels vous avez une application existante (en développement et en production) et que vous souhaitez commencer à utiliser les migrations. IgnoreChanges volonté simplifier l'ajout de la migration initiale à la base de données existante.Si vous êtes dans un scénario où aucune base de données de production n'existe, vous ne pouvez pas utiliser Ignorer les modifications.

L'option simple dans votre cas consiste à créer des entités à partir d'une base de données existante et à continuer à travailler sur une autre base de données créée par votre migration à partir de ces entités, car vous avez besoin de créer une table pour toutes ces entités dans Up méthode (et Down méthode respectivement).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top