Hier ist eine ausfallsichere Methode, die den Trick ohne viel Aufhebens erledigt:
Schritt 1: Platzieren Sie diesen Code direkt über der Migration, die Sie debuggen möchten:
public partial class ORACLE_Test : DbMigration
{
public override void Up()
{
if (!System.Diagnostics.Debugger.IsAttached)
System.Diagnostics.Debugger.Launch();
AddColumn("TEST", "UR_USER_ID", x => x.Decimal(nullable: false, precision: 11, scale: 0, storeType: "number"));
AddColumn("TEST", "UR_CLIENT_ID", x => x.Decimal(nullable: false, precision: 11, scale: 0, storeType: "number"));
[...]
}
public override void Down()
{
}
}
Schritt 2: Kompilieren Sie das Projekt mit Ihren Migrationen
Schritt 3: Öffnen Sie eine Konsole im Ausgabeverzeichnis (/ bin / Debug, / bin / Release usw.), die die DLL Ihrer Migrationen enthält
Schritt 4: Rufen Sie migrate.exe mit dem Parameter / scriptFile auf, um den Debugger zu starten und die gewünschte Datenbankmigration tatsächlich zu debuggen
migrate.exe "Your.Migrations.Assembly.dll" /scriptFile="foo.sql" /verbose /startupConfigurationFile="Your.Migrations.Assembly.config"
Sobald das Debugger-Auswahldialogfeld angezeigt wird, wählen Sie die Visual Studio-Instanz aus, die Sie bereits geöffnet haben.