Web.config.transform Nuget 包在更新时重新插入现有设置
Web.config.transform for Nuget Package Re-inserts Existing Settings On Update
我正在创建自己的 Nuget 程序包,但我正在努力解决与应用更新相关的一些问题。在我的 Nuget 包中,我正在将应用程序设置添加到 web.config,就像这样...
<add key="errorFileName" value="[errorFileName]" />
<add key="errorFilePath" value="[errorFilePath]" />
<add key="fileLoggingEnable" value="true" />
第一次安装包时,开发者需要设置一个实际的文件名和路径。当他们更新包时,转换会重新插入这些设置,显然在更改后无法识别这些设置的存在。
我对 web.config.install.xdt 做了一些研究,但我不明白如何忽略匹配的元素,即如果匹配则不要插入元素。我需要做这样的事情...
<add name="AWLT" connectionString="newstring"
providerName="newprovider"
xdt:Transform="Ignore" <-- This does not exist
xdt:Locator="Match(name)" />
我错过了什么?希望从那以后。提前致谢。
答案是在我的 install.xdt 文件中的元素中使用它。
xdt:Transform="InsertIfMissing"
我正在创建自己的 Nuget 程序包,但我正在努力解决与应用更新相关的一些问题。在我的 Nuget 包中,我正在将应用程序设置添加到 web.config,就像这样...
<add key="errorFileName" value="[errorFileName]" />
<add key="errorFilePath" value="[errorFilePath]" />
<add key="fileLoggingEnable" value="true" />
第一次安装包时,开发者需要设置一个实际的文件名和路径。当他们更新包时,转换会重新插入这些设置,显然在更改后无法识别这些设置的存在。
我对 web.config.install.xdt 做了一些研究,但我不明白如何忽略匹配的元素,即如果匹配则不要插入元素。我需要做这样的事情...
<add name="AWLT" connectionString="newstring"
providerName="newprovider"
xdt:Transform="Ignore" <-- This does not exist
xdt:Locator="Match(name)" />
我错过了什么?希望从那以后。提前致谢。
答案是在我的 install.xdt 文件中的元素中使用它。
xdt:Transform="InsertIfMissing"