将发布配置文件 (.xml) 转换为 DacDeployOptions 类

Posted

技术标签:

【中文标题】将发布配置文件 (.xml) 转换为 DacDeployOptions 类【英文标题】:Convert publish profile file (.xml) into DacDeployOptions class 【发布时间】:2021-12-24 22:34:40 【问题描述】:

我正在开发一个 C# 项目,我应该在其中部署一些 .dacpac 文件,因此我使用了 Microsoft.SqlServer.DacFx 库(来自 DacFx 的 github here)。

我还在另一部分使用了 SqlPackage.exe 可执行文件来部署另一个 .dacpac 文件(它们之间没有关系),所以我使用发布配置文件(.xml / .pubxml 文件)来配置部署选项。 cmd 命令如下所示:

SqlPackage /Profile:"Database.publish.xml"

我需要将此 .xml 文件反序列化为 DacDeployOptions 类,以便在发布 dacpacs 时使用相同的 pulish 配置文件,但尽管我已经能够搜索,但我找不到方法它。我将不胜感激。

谢谢????

【问题讨论】:

【参考方案1】:

经过长时间的搜索,我找到了解决方案。这里需要的代码:

DacProfile profile = DacProfile.Load(@"C:\temp\publish.xml");
PublishOptions options = new PublishOptions();
options.GenerateDeploymentReport = true;
options.GenerateDeploymentScript = true;
options.DeployOptions = profile.DeployOptions;

【讨论】:

以上是关于将发布配置文件 (.xml) 转换为 DacDeployOptions 类的主要内容,如果未能解决你的问题,请参考以下文章

xml配置文件使用-读取转换

需要基于 xml-mapping 将 POJO 转换为 XML 和 JSON 的工具

如何将资产文件转换为 XML 文件

将php数组转换为xml文件

如何将 NSdictionaries 的 NSarray 转换为 XML 文件?

使用 Gson 将 XML 文件转换为 Json