2009-12-30 8 views
2

최근에 연결 문자열을 machine.config로 이동하기로 결정했습니다. 여러 환경을 관리하는 가장 우아한 방법 인 것 같습니다. 그러나 필요가 생기면 (또는 비 계몽 된 대중이 불평하기 시작하면) 로컬 web.config에서이 설정을 무시할 수 있기를 바랄 것입니다.web.config로 machine.config 덮어 쓰기

값이 이미 설정되었으므로 ConfigurationErrorsException을 가져 오지 않고 web.config에서 machine.config의 설정을 무시할 수 있습니까?

답변

5

machine.config에 추가 한 것과 동일한 이름을 가진 로컬 web.config를 사용하여 다른 연결 문자열을 추가하려는 경우 먼저 제거해야합니다. connectionStrings 요소는 사전처럼 작동하므로 대체 문자열을 추가하기 전에 제거 또는 지우기 태그를 추가 할 수 있습니다. 자세한 내용은 this을 참조하십시오.

+0

감사합니다. 제게는 의미가 있습니다. 기본적으로 애플리케이션에 대한 하나의 글로벌 구성으로 병합되므로 실제로 시도 할 수 없습니다. –

+0

당신이하려는 일이 가능하지 않다면, 나는 그 질문에 대해 오해했을 것입니다. 메모리가 작동하면 SQL Server Express는 "Local Server"라는 이름의 machine.config에 연결 문자열을 만듭니다.이 문자열은 모든 응용 프로그램에서 사용할 수 있습니다. 앞에서 말했듯이 런타임에 구성이 병합 된 것처럼 보이기 때문입니다. SQL의 연결 문자열을 덮어 쓰려면 web.config에 태그를 추가하고 새 구성으로 추가 할 수 있습니다. – Rory

+0

그래, 나는 오해했다. 그것은 당신이 문서를 읽을 때 도움이됩니다;) 지금 얻었습니다. 고마워,이게 완벽 해. –