0

I'm trying to run some scripts in sequence to create and seed my database. However it seems like the second script never gets run. Furthermore, I think it's running the first script twice.

public DatabaseFixture()
{
    var connectionString = "Server=localhost;User Id = sa;Password=yourStrong(!)Password;Initial Catalog = master";

    var createSchemaSqlScriptOptions = new SqlScriptOptions { ScriptType = ScriptType.RunAlways, RunGroupOrder = 1 };
    var seedDataSqlScriptOptions = new SqlScriptOptions { ScriptType = ScriptType.RunAlways, RunGroupOrder = 2 };

    var upgradeEngineBuilder = DeployChanges.To.SqlDatabase(connectionString, null)
            .WithScriptsEmbeddedInAssembly(Assembly.GetExecutingAssembly(), script => script.Contains("0001"), createSchemaSqlScriptOptions)
            .WithScriptsEmbeddedInAssembly(Assembly.GetExecutingAssembly(), script => script.Contains("0002"), createSchemaSqlScriptOptions)
            .LogToConsole();

    var upgrader = upgradeEngineBuilder.Build();

    var result = upgrader.PerformUpgrade();
}

Also, all my scripts are embedded sources so I don't think it's that. enter image description here

nick gowdy
  • 6,191
  • 25
  • 88
  • 157

1 Answers1

0

Hi, your code shows a object createSchemaSqlScriptOptions duplicate in method WithScriptsEmbeddedInAssembly .

Give it a check.

enter image description here

Erik
  • 13
  • 3