Web Config Transformation to add a child element
Asked Answered
T

2

110

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.

Thermoplastic answered 14/6, 2012 at 12:15 Comment(0)
S
212

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

Standing answered 14/6, 2012 at 14:57 Comment(0)
L
-1

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.

Laktasic answered 14/6, 2012 at 14:53 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.