【问题标题】:Transform app.config Service Fabric guest executable转换 app.config Service Fabric 来宾可执行文件
【发布时间】:2018-10-04 19:07:50
【问题描述】:

我正在尝试将现有应用程序托管为 Service Fabric 中的来宾可执行文件。这项工作非常好,但现在我面临一个问题,到目前为止我还没有解决方案。

我们拥有的应用程序是使用 .NET 构建的 Windows 服务。它确实包含一个 app.config 文件,其中包含一些特定于环境的配置。在我们当前的平台上,我们创建包并使用 MSDeploy 部署它们。 MSDeploy 支持使用可以转换 web.config 文件的参数。这样我们就可以根据我们部署的环境更改配置。

我们如何使用 Service Fabric 中的来宾可执行文件来实现这一点?来宾可执行文件和 app.config 被添加到 sfproj 的代码包中。当我们实例化 Service Fabric 应用程序的新实例时,有没有一种方法可以转换 app.config?我知道配置包和 ApplicationParameter 文件,但它们不能转换 app.config 文件,可以吗?我们还有其他方法可以做到这一点吗?

【问题讨论】:

    标签: azure-service-fabric


    【解决方案1】:

    您可能实现此目的的一种方法是将 SetupEntryPoint 添加到服务清单以运行自定义脚本。在脚本(例如 PowerShell)中,从 Settings.xml(配置包)加载设置并使用这些值替换 app.config 文件中的占位符。

    然后您可以使用标准的 Service Fabric 参数文件 (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-how-to-parameterize-configuration-files) 来设置不同环境的值。

    【讨论】:

    • 这个解决方案确实有效。我认为这是我们现在可以实现这一目标的唯一途径。谢谢!
    【解决方案2】:

    您绝对可以转换 app.config。 有一个 NuGet 包https://github.com/acottais/msbuild.xdt 您必须通过命令行添加转换,但它们的工作方式与 web.config 转换一样。
    它也适用于自定义配置。

    【讨论】:

      猜你喜欢
      • 2016-12-10
      • 2017-01-28
      • 2019-08-16
      • 2020-08-12
      • 2018-03-11
      • 2017-07-07
      • 2019-04-26
      • 2018-07-24
      • 2018-03-22
      相关资源
      最近更新 更多