0

Ich habe zwei Umgebungen - Entwicklung und Produktion. Gespeicherte Prozeduren in meiner Anwendung sind für jede Umgebung etwas unterschiedlich. Sie verwenden intern unterschiedliche verknüpfte Server und andere Unterabfragen, die serverspezifisch sind, aber Prozessparameter haben die gleichen Eingabeparameter und Ausgabeergebnisspalten.Ist ein bedingter EF-Migrationscode möglich?

Ich habe alle Prozesse in Migrationen eingefügt, aber bei der Bereitstellung habe ich festgestellt, dass ich einen bedingten Migrationscode benötige, um produktionsspezifische gespeicherte Prozeduren zu implementieren.

Gibt es eine Möglichkeit, verschiedenen Migrationscode basierend auf Konfigurationseinstellungen oder Projektziel wie Debug, Release usw. zu starten? Hat jemand etwas Ähnliches, wenn Sie einen anderen umgebungsspezifischen Migrationscode haben müssen? Bitte

beraten

Antwort

1

Sie könnten eine # if-Direktive in der Migration wie folgt verwenden:

#if Release 
    Sql("Update..."); 
#elif Debug 
    Sql("Delete..."); 
#endif 

Wenn Sie Ihre Lösung bauen Sie müssen nur passieren, welche Konfiguration Sie bauen (Debug, Test, Release usw.).