如何获得VS模式比较工具的C#代码等价物?

如何获得VS模式比较工具的C#代码等价物?,c#,sql,sql-server,database-schema,schema-compare,C#,Sql,Sql Server,Database Schema,Schema Compare,我有多个SQL Server数据库,我希望将它们与一个金标准数据库进行比较,并生成一个报告/列表,其中包含这两个数据库在模式方面的所有差异。这将按计划自动完成 我需要能够使用C#来解决这个问题(这意味着我不能使用SSDT提供的GUI工具)。我也不能使用任何第三方工具,如红门 我很难找到任何关于如何进行这项工作的资源。谢谢。如果将数据库放入dacpac(SSDT项目),则可以使用sqlpackage.exe将dacpac与每个数据库进行比较,并使用/Action:DriftReport获得更改的x

我有多个SQL Server数据库,我希望将它们与一个金标准数据库进行比较,并生成一个报告/列表,其中包含这两个数据库在模式方面的所有差异。这将按计划自动完成

我需要能够使用C#来解决这个问题(这意味着我不能使用SSDT提供的GUI工具)。我也不能使用任何第三方工具,如红门


我很难找到任何关于如何进行这项工作的资源。谢谢。

如果将数据库放入dacpac(SSDT项目),则可以使用sqlpackage.exe将dacpac与每个数据库进行比较,并使用/Action:DriftReport获得更改的xml列表或/Action:DeployReport。您可以将对sqlpackage的调用包装在Process.Start中(您也可以直接调用该服务,但我看不到任何要处理的文档)

听起来,您正在尝试构建redgate正在构建的DLM仪表板,这是免费的,所以请看一下:


为这项任务编写自己的文档是一项规模巨大的任务。一开始看起来很简单,但一旦你深入了解了这些层,你就会开始明白为什么第三方工具比自己编写的更好。