Unable to Remove Web.Config Nodes using Transform

2019-04-19 13:07发布

问题:

I have a web.config containing rewrite rules like this:

<system.webServer>
    <rewrite>
      <rules><!-- Some rules here --></rules>
    </rewrite>
</system.webServer>

For a particular deployment configuration, I want to remove the <rewrite> node entirely.

I tried doing this:

<system.web>
    <rewrite xdt:Transform="RemoveAll" />
</system.web>    

Based on this documentation:

http://msdn.microsoft.com/en-us/library/dd465326.aspx

but the <rewrite> node remains.

What am I missing?

回答1:

Hmm I just tried this here is my transform file.

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">

  <system.webServer>
    <rewrite xdt:Transform="RemoveAll" />
  </system.webServer>

</configuration>

And here is the result: FYI preview provided by SlowCheetah.

I also packaged the web project and verified that the web.config indeed did not have the rewrite node. One thing to try here is to delete your obj\ folder and try again. Can you let me know the results?