Web Config Transformation to add a child element

大城市里の小女人 提交于 2019-11-29 10:32:08

问题


I've got the following configuration in web.config:

  <resizer>
    <sizelimits imageWidth="0" />
    <plugins>
      <add name="MvcRoutingShim" />
      <!--<add name="AzureReader" connectionString="DataConnectionString" /> -->
      <add name="DiskCache" />
      <add name="PrettyGifs" />
      <add name="AnimatedGifs" />
    </plugins>
  </resizer>

In web.config.Release, how can I add the AzureReader element as a child of the plugins element (effectively uncommenting out the above)?

I'm familiar with how to do basic transformations but have never done this before.


回答1:


You can use the Insert transformation:

 <resizer>
    <plugins>
      <add name="AzureReader" connectionString="DataConnectionString" 
           xdt:Transform="Insert" />
    </plugins>
  </resizer>

Web.config Transformation Syntax for Web Application Project Deployment




回答2:


If you want to do it using XSLT then here is some guidance as I don't have time right now to knock this out.

  1. Look up the identity transform. That will give you a simple XSLT that duplicates exactly what reads.
  2. Add a template above the generic templates with the following match match="add[@name='MvcRoutingShim']"
  3. Inside the template output the element you are processing using xsl:copy and then output the AzureReader add element

That should get you going.

Make sure you have an XML editor that allow you to do transforms so you can experiment locally until you get it right.



来源:https://stackoverflow.com/questions/11032868/web-config-transformation-to-add-a-child-element

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!