2010-11-30 17 views
4

MSDeployを使用しているときにweb.configカスタムセクションの値を変換する方法はありますか?MSDeployを使用してWeb.configカスタムセクションを変換する方法

<configSections> 
    <sectionGroup name="myGroup"> 
     <section name="data" type="MyApp.DataConfigurationSection, MyApp.Data" /> 
    </sectionGroup> 
    </configSections> 

    <myGroup> 
    <data interval="3" useCache="true" /> 
    </myGroup> 

ビルド構成によると、useCacheの値を変更する必要があります。

答えて

5

書き込み変換(web.config.release)

<?xml version="1.0"?> 
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <myGroup> 
    <data useCache="false" xdt:Transform="SetAttributes(useCache)" /> 
    </myGroup> 
</configuration> 
1

はい、MSDeployはこれを非常に簡単にサポートしています。

デプロイメントパッケージを作成するときに、-declareParmオプションを使用して、展開パッケージに置き換え可能なパラメータを作成する必要があります。あなたのパッケージを展開するとき次に、あなたが展開中のパラメータを置き換えるために-setParmコマンドを使用すると思い

-declareParam:name=UseCache,kind=XmlFile,scope=web.config,match="/configuration/myGroup/data/@useCache" 

:あなたのようなものを使用すると思います。ような何か:

-setParam:name=UseCache,value="false" 

この例では、「偽」とweb.configファイルでuseCache属性を指すUseCacheパラメータを、置き換えます。

置き換えられるパラメータの数は任意で、MSDeployはファイルを使用してパラメータを保持できます。ファイルは単純なXMLファイルで、-setParamFile:<filename>-declareParamFile:<filename>の構文を使用します。コンフィグ変換ファイルに

関連する問題