2016-10-24 3 views
0

저는 Visual Studio 팀 서비스를 사용하고 있으며 빌드 프로세스를 사용하여 개발 서버에 코드를 작성하고 푸시합니다. 문제는 web.config에 localhost 연결 문자열이 있고 dev 서버 연결 문자열이 주석 처리 된 것입니다. 올바른 연결 문자열을 사용하기 위해 web.config 및 빌드 프로세스를 어떻게 설정합니까?실행되는 환경에 따라 web.config에서 연결 문자열을 변경하는 방법은 무엇입니까?

미리 감사드립니다.

+0

내 솔루션으로이 문제를 해결합니까? –

답변

-1

web.config 변환은 구성 관리자의 빌드를 기반으로합니다. 당신은 특정 값을 대체 할 수

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <connectionStrings> 
    <add name="MyConnectionString" 
     connectionString="Data Source=MyServer;Initial Catalog=myDB;Integrated Security=True;" 
     providerName="System.Data.SqlClient" xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/> 
    </connectionStrings> 
</configuration> 
+1

빌드 타임 web.config 변형은 배포 당 권장을 유도하기 때문에 바람직하지 않습니다. –

1

1) 설정 파일에 마크 업을 추가 추가 파일 (web.config.debug, web.config.release)

2)를 추가 VSTS에서 빌드 또는 릴리스하는 동안 Replace Token task 통해 파일 (예 : web.config).

토큰 작업을 교체의 구성의 enter image description here

, 그것은 사기 변수 값 # {사기} # (변수 만들기 (변수 이름 대체 할 수있다 : 죄수를) 변수 탭의 예를 들어

$ (System.DefaultWorkingDirectory) 위치에있는 모든 .config 파일 (# {con} # code를 가짐)에 대한 빌드 정의).

<connectionStrings> 
    <add name="DefaultConnection" connectionString="#{con}#" providerName="System.Data.SqlClient" /> 
    </connectionStrings> 
관련 문제