2012-12-01 2 views
1

서버의 데이터베이스 (실제 데이터베이스)와 localhost에서 테스트하기 위해 유지하는 로컬 복사본간에 전환하고 싶습니다.연결 문자열을 변경해도 데이터베이스가 변경되지 않습니까?

app.config에서 연결 문자열의 정의를 변경하여 db # 1 (서버)과 db # 2 (로컬 호스트)간에 전환을 시도했습니다. 메모리에 아무것도 숨기지 않도록 VS를 다시 시작했습니다. 이상한 일이 일어난다. 한 손으로 데이터 소스/미리보기 데이터 (VS'10에서)를 통해 db에 쿼리하면 참으로 db # 2에서 데이터를 가져온다. 하지만 연결 문자열이 app.config에서만 나타난다는 것을 알기는하지만 응용 프로그램을 실행하면 여전히 db # 1의 정보를 얻습니다. 그래서 연결하기 위해 정보를 어디에서 가져올 지 이해하지 못합니다. db # 1.

우리가 주제를 다루는 동안 데이터베이스를 전환하는 더 우아한 방법은 무엇입니까? 이상적으로 풀다운 메뉴에서 데이터 소스를 선택했습니다. 하지만 런타임에 연결 문자열을 전환 할 수 있습니까?

+0

'app.config'를 변경 한 후 다시 컴파일 하시겠습니까? 'app.config'의 복사본은 빌드 과정에서'<실행 파일 이름> .config' 파일로 이름이 바뀌며 런타임에 사용되는 config 파일입니다. –

답변

0

Visual Studio는 자체 app.config 파일에서 자체 데이터베이스 연결 정보를 유지 관리합니다. 이는 app.config 솔루션과 완전히 독립적입니다.

데이터베이스 전환은 비교적 쉽습니다. app.config에 다른 이름의 연결 문자열 2 개를 입력하십시오. 변수를 사용하여 원하는 문자열을 보유하고 연결 문자열을 직접 참조하는 모든 위치에서이 문자열을 참조하십시오.

관련 문제