2012-09-04 3 views
2

IIS의 루트 디렉토리에있는 web.config에서 연결 문자열을 상속하는 그룹이 있습니다. 즉, 앱의 루트 디렉토리에 연결 문자열을 지정할 필요가 없지만 로컬로 디버깅 할 때 연결 문자열을 지정해야합니다.web.debug.config에서만 연결 문자열을 지정할 수 있습니까?

제 질문은 디버깅 할 때만 사용되는 web.debug.config에서 어떻게 연결 문자열을 설정할 수 있습니까?

답변

3

일반적인 web.config에서 연결 문자열을 지정한 다음 web.release.config에서 연결 문자열을 모두 제거하는 변환을 추가 할 수 있습니다.

그런 식으로 디버그에 있지만 web.release.config에는 존재하지 않아야합니다. 물론

이 당신이 변환과 그 CONFIGS을 사용하고

MSDN를 배포 할 때 코드의 간단한 복사/붙여 넣기를하고 있지이

다음 예제 프로그램의 좋은 예를 가지고하는 것으로 가정 모든 연결 문자열을 선택하는 방법 개발 Web.config 파일에서 요소를 추가하십시오. 배포 된 Web.config 파일에서 첫 번째 연결 문자열 요소 만 제거됩니다.

<configuration xmlns:xdt="..."> 
    <connectionStrings> 
    <add xdt:Transform="Remove" /> 
    </connectionStrings> 
</configuration> 

편집 : 난 당신이 또한 당신이 '때로 믿을 경우 원래의 Web.config에서 그것을 유지하는 데 도움이 될 디버깅하는 동안 추가 web.debug.config에 변환 만들 수 선택적으로 추측

+1

아래 표와 같이 로케이터를 사용 Web.Release.Config의 해제 연결 문자열을있는 Web.Config에서 디버그 연결 문자열을 유지하고 대체 배포 할 때 t의 appying은 변환합니다. 그것을 변환을 통해 로컬 web.config에서 제거하면 상위 응용 프로그램에서 상속받을 수 있습니다. – Chris

0

이 정답이다 <connectionStrings> <add name="DefaultConnection" connectionString="Release Connections tring" providerName="System.Data.SqlClient" xdt:Transform="SetAttributes" xdt:Locator="XPath(configuration/connectionStrings)"/> </connectionStrings>

관련 문제