0

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

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

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

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

$SchemaComparison.SettingsService #(不是已知属性)

我如何在代码中做我可以从 SSDT 比较 UI 轻松做的事情?

在此处输入图像描述

4

1 回答 1

0

我找到了答案。在 options 对象中隐藏了一个 excludeObjects 属性。它是一个 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

于 2018-02-17T23:47:58.627 回答