Der Veröffentlichung meiner Datenbank (Paket bereitstellen) mit Code First-Migrationen
Ich habe VS2012 MVC4-Lösung (EF5). Bei der Codierung verwende ich meinen PC mit einem SQL Express auf demselben Computer installiert sein. Jedes mal muss ich auf ein update veröffentlichen, um das Unternehmen habe ich ein Paket erstellen (.zip) und importieren Sie dann dieses Paket auf den IIS von der Firma (nicht erreichbar von meiner dev-computer). Jedes mal, wenn ich veröffentlichte meine Lösung auf dem IIS-server des Unternehmens, reproduziere ich die gesamte Datenbank. Das war in der Vergangenheit...
Nun, ich habe meine Lösung und verwenden Sie die Code First-Migrationen. Bei Bedarf (Personen geändert), ich update meine lokale Datenbank, Dank der "Paket-Manager-Konsole" (Update-Datenbank).
Meine Frage: was muss ich tun um die Datenbank zu aktualisieren, die auf den IIS von der Firma?
Ich sehe in dem screenshot unten auf eine Erläuterung Seite ( http://msdn.microsoft.com/en-us/library/dd465337.aspx ), aber ich habe nicht den gleichen Bildschirm, wenn ich öffnen Sie den Assistenten zum veröffentlichen auf meinem VS2012.
Unten ist der Bildschirm gesehen, auf einer Dokumentations-Seite:
Unten ist der Schirm, den ich habe:
Jede Hilfe wird sehr geschätzt.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Aktivieren Sie das Kontrollkästchen, durch Bearbeiten der Eigenschaften\YourProject - WebDeploy.pubxml Blick für die PublishDatabaseSettings
Ändern Namespace.Modelle.YourDBClass durch die Klasse, die erbt DbContext, ändern Namespace.Migratins.Konfiguration passend für Ihre migration configuration-namespace und Montage mit Ihrem Montage-name.
Speichern und öffnen Sie den Assistenten zum veröffentlichen haben Sie, dass der check-box.
Hoffen, dass Hilfe
Ich habe gesehen, das passiert, auch. Ich bin mir nicht sicher, was der Heuristik des deployment tools verwenden, um zu ermitteln, die Anwesenheit von EF, aber die option erscheint sporadisch.
Was das veröffentlichen von tools ist einfach zu replizieren. Sie können eine Datenbank-Initialisierung in Ihrer Website.config Datei (oder eine Transformation in web.config.release) zum ausführen der Migration. Es würde wie folgt Aussehen (für eine Transformation):
Generika sind hässlich, die in einer Datei, aber Sie könnten auch legen Sie die Initialisierung code: http://msdn.microsoft.com/en-us/library/hh829293(v=vs. 103).aspx
Hoffe, das hilft.
Lassen Sie mich einen Stich und eine Frage zu stellen.
War dies bisher ein VS2010-Projekt? 🙂
Ich Frage, weil die Konvertierung funktioniert nicht nach upgrade ein VS2010 zu einem VS2012 und halten Sie die Veröffentlichung Profilen intakt. Einfach zu viele änderungen.
Beste Wette ist, um löschen Sie alle vorhandenen publishing-Profilen, die Sie haben (Dateien) und erstellen Sie neue publishing-Profilen.
Stellen Sie sicher, dass die richtige EF angegebenen Kontext über die Ode ' s erste Antwort obwohl. Der publishing-Assistent muss in der Lage sein zu sehen, Ihr Kontext, bevor es profile erstellt.
Entity Framework Code First Daten-Migrationen funktioniert nicht mit VS2012 Web Bereitstellen