7

web.config 변환 파일에 변수를 포함 할 수 있습니까? 각 환경에 대해 기본적으로 다른 값을 사용하여 동일한 변환이 있습니다. 예를 들어, 개발 환경, 나는Web.config 변환 변수

<?xml version="1.0"?> 
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <appSettings> 
     <add key="serverName" value="server2" xdt:Transform="Replace" xdt:Locator="Match(key)" /> 
     <add key="serverPath" value="\\server2" xdt:Transform="Replace" xdt:Locator="Match(key)" /> 
    </appSettings> 
</configuration> 

유일한 차이점은 서버 1의 값입니다 ...

<?xml version="1.0"?> 
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <appSettings> 
     <add key="serverName" value="server1" xdt:Transform="Replace" xdt:Locator="Match(key)" /> 
     <add key="serverPath" value="\\server1" xdt:Transform="Replace" xdt:Locator="Match(key)" /> 
    </appSettings> 
</configuration> 

그리고 QA 환경

가, 내가 가진 것 ...이 것 vs server2. 이것은 간단한 예이며 실제로는 변환에서 서버 값을 여러 번 사용합니다. 변환 파일에서 변수를 여러 번 사용하도록 선언 할 수있는 방법이 있습니까? 뭔가가 ...

<?xml version="1.0"?> 
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <property name="server" value="server2" /> 
    <appSettings> 
     <add key="serverName" value="${server}" xdt:Transform="Replace" xdt:Locator="Match(key)" /> 
     <add key="serverPath" value="\\${server}" xdt:Transform="Replace" xdt:Locator="Match(key)" /> 
    </appSettings> 
</configuration> 

답변

4

이것은 web.config 변환에서 지원되지 않습니다. 한 가지 살펴볼 수있는 것은 T4 Template을 만들어서 web.config 변환을 생성하는 데 사용할 수 있습니다. 따라서 T4 템플릿에 변수를 배치하면 web.debug.config/web.release.config/etc가 나옵니다. 그런 다음 패키지/게시하면 T4 출력으로 생성 된 변환 파일 만 선택됩니다.

유용함에 대한 몇 가지 구체적인 예를 제공 할 수 있다면 그와 같은 도움을받을 수 있습니다.