public string GenerateUpgradeScript(byte[] dacpac, DbConnection target, DbUpgradeOptions options) { return(GenerateUpgradeScript(target, dacpac, options)); }
private string GenerateUpgradeScript(DbConnection dbConnection, byte[] dacpac, DbUpgradeOptions options, string databaseNameOverride = "") { var dacServices = new DacServices(dbConnection.ConnectionString); var databaseName = dbConnection.DatabaseName; if (!String.IsNullOrEmpty(databaseNameOverride)) { databaseName = databaseNameOverride; } using (var stream = new MemoryStream(dacpac)) { var publishResult = dacServices.Script(DacPackage.Load(stream, DacSchemaModelStorageType.Memory), dbConnection.DatabaseName, new PublishOptions { GenerateDeploymentScript = true, DeployOptions = new DacDeployOptions { AllowIncompatiblePlatform = true, IgnoreNotForReplication = options.IgnoreNotForReplication, DropConstraintsNotInSource = options.DropConstraintsNotInSource, DropIndexesNotInSource = options.DropIndexesNotInSource, VerifyDeployment = options.VerifyDeployment, ExcludeObjectTypes = options.IgnoreObjectTypes// new ObjectType[] { ObjectType.Users, ObjectType.Views, ObjectType.RoleMembership, ObjectType.Permissions, ObjectType.ExtendedProperties, ObjectType.StoredProcedures, ObjectType.Logins, ObjectType.DatabaseTriggers, ObjectType.ServerTriggers } } }); return(publishResult.DatabaseScript); } }
public string GenerateUpgradeScript(byte[] dacpac, DbUpgradeOptions options, string databaseName = "") { return(GenerateUpgradeScript(sourceConnection, dacpac, options, databaseName)); }