2010-12-16 9 views
8

私はVS2010経由で利用可能なweb.config変換を使用しています。この1つのケースでは、変換中にエレメントを別のエレメントに「囲む」ことが可能かどうかと思います。次に例を示します。Web.config変換 - 周囲の要素

デフォルトのweb.configファイルには含まれています

<configuration> 
    <system.web> 
    .... 
    </system.web> 
</configuration> 

マイ変換ファイルだから、基本的に、私は場所と「ラップ」のsystem.web要素にしたい

<configuration> 
    <location inheritInChildApplications="false"> 
    <system.web> 
    ... 
    </system.web> 
    </location> 
</configuration> 

が含まれている必要があります素子。私の唯一の考えは、私が前などの後に挿入されるように変換を行うことでした。

<location inheritInChildApplications="false" 
      xdt:Transform="InsertBefore(/configuration/system.web)"> 
</location xdt:Transform="InsertAfter(/configuration/system.web)"> 

しかし、決算location要素は、VSに応じた有効なXML(私は理由変換属性の推測している)ではありません。 System.webがまだ囲まれていないため、system.webの前に自己閉じのlocation要素を挿入するだけでは役に立ちません。

答えて

2

現在、web.config変換を使用してこれを行うことはできませんが、カスタム変換を書き込んだ場合は実際に実行可能でなければなりません。カスタム変換を書き込む方法については文書化されていますがそれはあなたがそれになりたいあなたのWebConfigで空の場所のタグを追加する場合、私は...とすぐに利用できるよう

+0

これまでにこの問題が発生しましたか?私は現在、この正確な状況を見ています。 –

2

をそれを投稿します...今からまだ

ではありませんがあります無効。

次に、あなたの他のものと同じ場所にファイル変換でこれを置くことができますあまりにも終了タグで

<location xdt:Locator="XPath(some xpath expression)" 
      inheritChildApplications="false" 
      xdt:Transform="SetAttributes(inheritChildApplications)"> 

をし、すべてのこと。

関連する問題