问题标签 [xdt-transform]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1085 浏览

c# - ASP.NET 和 Visual Studio 2019:如果 Web.config 中有 configSource,如何设置 Web.Debug 和 Web.Release?

在我的 ASP.NET Web 表单中,这是我的连接字符串在我的 Web.config 文件中的样子:

<connectionStrings configSource="MySecrets.config"/>

我知道我可以使用 Web.Debug 和 Web.Release 来更改连接字符串,以便在发布 Web 应用程序时不会暴露它们。

但是,Visual Studio 提供的示例提到:

但是,这引用了<connectionStrings>Web.config 文件中我一开始没有的部分,因为在我的项目中我有:

<connectionStrings configSource="MySecrets.config"

如何设置 Web.Release 以替换MySecrets.config文件,使其在发布后不可见?

0 投票
1 回答
131 浏览

azure-devops - XDT 转换不适用于 Azure 上的 applicationHost.xdt - 环境变量被忽略

似乎在我的 applicationHost 的 xdt 转换中忽略了环境变量。

我在文件夹applicationHost.xdt中的 azure 上创建了以下文件\home\site。它不对 applicationHost.config 执行转换

如果我将 %WEBSITE_SITE_NAME% 调整为“dev-mysitename.com”,则转换工作正常

为什么环境变量不能正常工作?我需要它来工作,这样我的不同环境才能正常工作。

0 投票
1 回答
427 浏览

asp.net - 如何使用 web.config 转换在 APP 设置部分插入新密钥

我想在应用设置部分插入新的键值,其他键值应该保持不变。

以下是我的源配置<

`

我的转换配置文件如下所示:

现在,从上面的 transform config add key="WFCredentials03" 我的源配置文件中没有这个键,那么我如何在我的转换配置文件中添加这里?

0 投票
0 回答
150 浏览

asp.net - 目标 Web 配置文件中的 XDT 转换

在以下目标配置文件和目标配置文件上应用转换规则后,输出连续打印在一行,但不是一行接一行。任何帮助将不胜感激?

下面是我的源配置文件:

我的目标 web.config 看起来像:

0 投票
1 回答
244 浏览

c# - 你可以从 powershell 运行 Microsoft.VisualStudio.SlowCheetah 吗?

我想运行一个 powershell 构建脚本,其中我有一些不是 app.config、appsettings.json 或 web.config 文件的配置文件 (xml/json),我想根据构建配置进行转换。完美的工具似乎是 VisualStudio.SlowCheetah,因为它同时支持 xml 和 json,并且它使用与 web.config 转换相同的底层技术(这也在我的项目中)。有没有办法从powershell运行这个工具,如果有相同的工具在解决方案中进行转换也对我的辅助文件进行转换,那会很好吗?

0 投票
0 回答
36 浏览

asp.net-mvc - 使用外部 configSource 将连接字符串替换为 Web.Release.config

我正在尝试将我们所有的连接字符串移动到外部文件,但我无法让我们的生产应用程序运行 - 发布时我们收到一条错误消息:

**

Web.config 连接字符串参数不能为空或为空。

**

我想知道 Release 转换是否不起作用。

仅供参考 - 我们将所有文件属性设置Copy To Output DirectoryCopy Always

我们有 5 个文件 -

开发:( 这是有效的)

Web.config&Web.Debug.config包含:

配置源指向我们的本地开发数据库并且正在工作:

Configurations\Debug.Conn.config:

对于生产:( 这不起作用)

Web.Release.config包含:

configSource 指向我们的生产数据库。

Configurations\Release.Conn.config:

--

首先:在我寻找答案的所有过程中,我只能找到有关使用 Web.config 主文件进行转换的帖子 - 几乎没有提到使用外部文件使用configSource

其次:当我删除外部文件并将数据直接放入 Web.config 文件时,转换工作——但这​​违背了我们试图做的事情的目的。

所以 - 我不知道在发布时从替换连接字符串中获取生产数据库缺少什么。

0 投票
1 回答
36 浏览

xpath - XML 转换根据相邻节点中的值定位节点

我正在尝试为没有键或名称的节点设置属性,但它的相邻节点可以通过其name属性来识别。但我真的很难想出一个定位表达式来选择正确的节点。

源xml是:

我试过了

但它不会更新节点的oldVersion属性,bindingRedirect如果我完全省略xdt:Locator="..."它,它会更改所有bindingRedirect节点的值。

更新: 使用这个在线 xpath 评估器和 Jack Fleeting 的答案,我找到了一个 xpath 表达式,它正确选择了我想要的节点

现在的问题似乎是转换引擎不知道如何处理这个问题。我尝试使用转换ReplaceSetAttributes,但都没有导致节点更新。有任何想法吗。

0 投票
1 回答
574 浏览

azure-devops - Azure DevOps 发布转换/替换令牌

我有 2 个配置文件,ConnectionStrings.config 和 ConnectionStrings.Release.config。这些文件用于存储我们在应用程序中使用的各种连接字符串。

当我们在本地部署时,我们使用正常的 ConnectionStrings.config,文件中没有任何替换标记。.release.config 是具有令牌的那个。

我正在使用这 2 个市场任务 [我的发布管道中的任务] 1

据我了解,转换任务正在获取 .release.config 文件并“重命名”.config,然后替换令牌任务用我的管道中的变量替换必要的令牌。最后我将这些复制到我的目标。我的复制任务来源是我在 Azure 中的 Git 工作目录。

当我检查结果时,我没有看到 ConnectionStrings.config 根本没有改变,它只是像本地部署一样被复制过来。

我究竟做错了什么?

0 投票
0 回答
56 浏览

xml - .NET5 中自定义文件的 XML 转换

我正在寻找解决方案一段时间。有人可以写一个示例如何为自定义 xml 文件进行 XML 转换吗?

背景:我正在研究我们从 .NET Framework 4.6 转换为 .NET5 的库。库有像 Library.xml 这样的配置文件,我们用于内部配置 - 由于库用户,现在我们无法将配置文件转换为 Library.json。对于外部配置,我们已经使用了 appsettings.json。

类似于:https ://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/transform-webconfig?view=aspnetcore-5.0

0 投票
2 回答
51 浏览

asp.net - 当 Web.config 元素已经包含不同的 xmlns 时如何使用 xdt-transform

使用 Visual Studio Web.Config 转换,我想在 Web.Debug.Config 中包含以下行:<add source="*.amazonaws.com" />

这是我的 Web.config

我已经在 Web.Debug.config中完成了这里的建议:

但是没有添加新行,我该怎么做?

我认为这是因为httpHeaderSecurityModulexmlns属性但不知道如何解决这个问题?

请注意,我已从转换文件中删除了xmlns=...from httpHeaderSecurityModule,如果我包含命名空间,则会收到以下语法错误:

未声明“http://schemas.microsoft.com/XML-Document-Transform:Transform”属性