SSDT:如何在代码中配置 SchemaCompare 对象设置

SSDT: How to configure SchemaCompare Object settings in code

如何编辑 SchemaComparison 对象中的 SchemaCompare 设置?

$SchemaComparison = [SchemaComparison]::new($SourceEndPoint, $TargetEndPoint) $SchemaComparison.Options = $DeployOptions

我特别希望删除数据库选项,但 SchemaCompare 设置似乎无法通过代码访问:

$SchemaComparison.Options.ExcludeDatabaseOptions #(选项对象未知 属性)

$SchemaComparison.SettingsService #(未知 属性)

如何在代码中执行我可以通过 SSDT 比较轻松完成的操作 UI?

我找到了答案。在选项对象中隐藏了一个 excludedObjects 属性。它是一个 ObjectType 枚举数组:

$SchemaComparison.Options.ExcludeObjectTypes += [ObjectType]::Aggregates
$SchemaComparison.Options.ExcludeObjectTypes += [ObjectType]::ApplicationRoles
$SchemaComparison.Options.ExcludeObjectTypes += [ObjectType]::Assemblies

您可以排除任何您想要的。 MSDN 在此处包含列表:

https://msdn.microsoft.com/en-us/library/microsoft.sqlserver.dac.objecttype.aspx