Ich habe eine MVC 3.0-Anwendung mit Visual Studio 2012, .NET 4.5 und Entity Framework 5.0 erstellt.Entity Framework-Code Erste Datenmigrationen funktionieren nicht mit VS2012 Web Deploy
Mithilfe von Code First Data Migration kann ich Modelländerungen korrekt an meine lokale Testdatenbank weitergeben, aber ich kann nicht herausfinden, wie dies bei der Bereitstellung auf meinen Staging- und Produktionsservern mit Web Deploy funktioniert.
ich folgende Artikel gelesen haben ...
http://msdn.microsoft.com/en-us/library/dd394698(v=vs.110)#dbdacfx
... was erklärt, was passieren soll, aber es funktioniert nicht für mich, da Web Deploy nicht in der Lage scheint zu erkennen, dass ich verwende Entitätsrahmen Das Tutorial zeigt eine Checkbox Ausführung von Code erster Migrations ... ermöglichen
... aber mein Dialog zeigt die einzige Update Database
Checkbox für jede Datenbank.
Ich habe gelesen, dass die Web.config
ein Element enthalten muss, um es zu definieren, damit Visual Studio die Verwendung eines Entity Framework-Kontext erkennt. Hier ist meins:
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<contexts>
<context type="MyContext, MyAssembly">
<databaseInitializer type="System.Data.Entity.MigrateDatabaseToLatestVersion`2[[MyContext, MyAssembly], [MyConfig, MyAssembly]], EntityFramework">
<parameters>
<parameter value="MyConnectionStringName"/>
</parameters>
</databaseInitializer>
</context>
</contexts>
</entityFramework>
Alle Vorschläge würden sehr geschätzt werden.
Danke,
Tim
Möchten Sie uns einen Überblick über die Unterschiede geben? –
@Richard: Innerhalb von enthält das neu erstellte Profil eine Reihe zusätzlicher Elemente, von denen jedes eine Kontextklasse darstellt. Ich gehe davon aus, dass bei der ersten Ausführung von Web Deploy eine Art von Erkennungsprozess ausgeführt wird, der nicht als Teil der VS2012-Lösungskonvertierung ausgeführt wird. –