public override void Execute(ExecutionContext executionContext, IDictionary<string, object> tags) { AssemblyInventory assemblyInventory = (AssemblyInventory)executionContext.GetInventory(Source.Assembly, false); if (assemblyInventory == null) { throw new NotSupportedException("The assembly inventory could not be created"); } DatabaseInventory databaseInventory = (DatabaseInventory)executionContext.GetInventory(Source.Database, false); if (databaseInventory == null) { throw new NotSupportedException("The database inventory could not be created"); } #warning perform lookup on ModuleStore tables and perform only updates as necessary on all matching schemas base.ExecuteInternal(executionContext, tags, assemblyInventory.GenerateUpdateSql(databaseInventory, 0)); }
public override void Execute(ExecutionContext executionContext, IDictionary<string, object> tags) { DatabaseInventory inventory = executionContext.GetInventory(Source.Database, false) as DatabaseInventory; if (inventory == null) { throw new NotSupportedException("The database inventory could not be created"); } ExecuteInternal(executionContext, tags, inventory.GenerateUninstallSql()); }
public override void Execute(ExecutionContext executionContext, IDictionary<string, object> tags) { Source inventorySource = (Source)tags["source"]; InstallableInventory inventory = executionContext.GetInventory(inventorySource, (bool)tags["directories"]) as InstallableInventory; if (inventory == null) { throw new NotSupportedException("The selected inventory type cannot be used as installation source"); } IEnumerable<string> sqlStatements = inventory.GenerateInstallSql(DatabaseEngine.Unknown, executionContext.Schema, "dbo"); ExecuteInternal(executionContext, tags, sqlStatements); }