【问题标题】:.NET App.config. How to replace file attribute?.NET 应用程序配置。如何替换文件属性?
【发布时间】:2017-11-09 19:56:33
【问题描述】:

以下是当前情况的简短摘要: 在我的解决方案(控制台应用程序)中,我使用 app.config 文件,其条目如下:

在我们的生产环境中,这个文件是由单独的例程提供的,我们不想把它放在项目文件存储库中。我们仍然需要一种方便的方式在开发环境中运行解决方案。

我们想出了一个想法,用SlowCheetach 替换 file 属性。它可以很好地替换键值条目,但我们无法使其正常运行。

有没有办法用SlowCheetach 或任何其他轻量级工具替换 file 属性?我们真的想避免使用构建脚本来修改 app.config 输出。

【问题讨论】:

    标签: .net app-config slowcheetah


    【解决方案1】:

    以下解决方案无法正常工作,因为 id 不是有效的架构元素。真正的解决方案在底部。

    我想出了一个简单的方法来完成这个。所需要做的就是向 appSettings 添加另一个属性并将其设置为匹配选择器,以便 app.config 中的条目如下所示:

     <appSettings file="Additional.config" id="appconfig">
    

    和 App.Debug.config 中的那个:

    <appSettings id="appconfig" file="New/Path/To/Additional.config" xdt:Transform="Replace" xdt:Locator="Match(id)">
    

    真正的解决方案在这里:

    原来你可以简单的在form中使用transform:

       <appSettings xdt:Transform="RemoveAttributes(file)">
    

    这将仅删除传递给 RemoveAttributes 的属性,并保持其余配置不变。

    更多关于可能的变换属性可以阅读here

    【讨论】:

      猜你喜欢
      • 2014-07-02
      • 1970-01-01
      • 2020-07-20
      • 1970-01-01
      • 1970-01-01
      • 2010-09-15
      • 1970-01-01
      • 2010-10-01
      • 1970-01-01
      相关资源
      最近更新 更多