将发布配置文件 (.xml) 转换为 DacDeployOptions class
Convert publish profile file (.xml) into DacDeployOptions class
我正在开发一个 C# 项目,我应该在其中部署几个 .dacpac 文件,所以我使用了 Microsoft.SqlServer.DacFx library (github from DacFx here)。
我还在另一部分使用了 SqlPackage.exe 可执行文件来部署另一个 .dacpac 文件(它们之间没有关系),所以我使用的是发布配置文件 (.xml / .pub xml 文件)来配置部署选项。 cmd 命令如下所示:
SqlPackage /Profile:"Database.publish.xml"
我需要将此 .xml 文件反序列化为 DacDeployOptions class 以便在发布 dacpac 时使用相同的 pulish 配置文件,但我一直能够搜索我找不到办法做到这一点。我将不胜感激。
谢谢
经过长时间的搜索,我找到了解决方案。这里需要代码:
DacProfile profile = DacProfile.Load(@"C:\temp\publish.xml");
PublishOptions options = new PublishOptions();
options.GenerateDeploymentReport = true;
options.GenerateDeploymentScript = true;
options.DeployOptions = profile.DeployOptions;
我正在开发一个 C# 项目,我应该在其中部署几个 .dacpac 文件,所以我使用了 Microsoft.SqlServer.DacFx library (github from DacFx here)。
我还在另一部分使用了 SqlPackage.exe 可执行文件来部署另一个 .dacpac 文件(它们之间没有关系),所以我使用的是发布配置文件 (.xml / .pub xml 文件)来配置部署选项。 cmd 命令如下所示:
SqlPackage /Profile:"Database.publish.xml"
我需要将此 .xml 文件反序列化为 DacDeployOptions class 以便在发布 dacpac 时使用相同的 pulish 配置文件,但我一直能够搜索我找不到办法做到这一点。我将不胜感激。
谢谢
经过长时间的搜索,我找到了解决方案。这里需要代码:
DacProfile profile = DacProfile.Load(@"C:\temp\publish.xml");
PublishOptions options = new PublishOptions();
options.GenerateDeploymentReport = true;
options.GenerateDeploymentScript = true;
options.DeployOptions = profile.DeployOptions;