2010-04-16 2 views
1

저는 ASP.NET 웹 응용 프로그램에서 일하고 있습니다. 우리는 소규모 팀 (4 명의 학생)이며 데이터베이스 인스턴스를 호스팅하는 전용 서버에 대한 액세스 권한이 없습니다. 따라서이 웹 응용 프로그램의 경우 App_Data 폴더에 데이터베이스 파일을 저장하기로 결정했습니다.소스 제어 웹 응용 프로그램에서 데이터베이스 파일을 자동으로 체크 아웃하는 방법은 무엇입니까?

문제는 우리 프로젝트가 TFS에서 소스로 제어되므로 솔루션을 열고 웹 응용 프로그램을 시작하려고 할 때마다 데이터베이스가 읽기 전용임을 알리는 메시지가 표시됩니다. 데이터베이스 파일이 자동으로 체크 아웃되지 않기 때문에 논리적입니다.

솔루션을 열 때마다 데이터베이스 파일의 수동 체크 아웃을 피할 수있는 임시 해결책이 있습니까?

감사합니다.

답변

1

MDF 파일을 체크인하지 마십시오. 필요한 테이블 및 기타 데이터베이스 오브젝트를 작성하는 전개 스크립트로 프로젝트를 개발해야합니다. VS 서버 탐색기에서 직접 MDF를 수정하지 마십시오. version based approach to database schema을 사용하십시오.

'힘들다'라고 말하지만, VS 마법사가 여러분을 안내하는 대안은 훨씬 더 나을 것입니다. 팀 개발 관점뿐 아니라 배포 관점에서도 그렇습니다. 사이트의 v1을 배포 한 후에는 변경하고 v1.1 또는 v2를 배포하려고합니다. 매번 MDF 파일 4 개, 각 팀원 입대마다 1 개, 배포 된 사이트에 1 개 등의 딜레마가 있습니다. 스키마를 정렬 할 수있는 방법은 없습니다. 결국 SQL Compare와 같은 SQL diff 도구를 요구하게 될 것입니다. 그러나 SQL 스키마를 유지 관리하는 데는 많은 돈이 들며 완벽하지는 않습니다.

게다가 데이터베이스 소스로 개의 스크립트을 갖는 것은 누가 언제 무엇을 변경했는지 추적하는 것과 같은 다른 모든 소스 제어 기능과도 잘 맞습니다.

+0

:

애드온 VS 2008가에 위치해 있습니다. MDF 파일을 확인하는 것은 나에게도 약간의 문제가 있습니다. 다른 개발자와 같은 인스턴스를 동시에 공유하지 않기 때문입니다. 데이터베이스 지식이 많지 않기 때문에 "어렵습니다"부분에 동의합니다. 하지만 데이터베이스 프로젝트를 살펴 보겠습니다. 이 답변이 내 질문에 응답하지 않더라도 올바른 길로 나를 인도 할 때 받아 들일 것입니다. 감사. – Ucodia

0

"Visual Studio Team System for Visual Studio Team Edition"(이전에는 "DBPro"라고 함)을 설치할 수있는 경우 현재 데이터베이스를 다음 위치로 가져올 수 있습니다. 전체 VS 솔루션의 일부가 될 수있는 Visual Studio Database 프로젝트.

그러면 Visual Studio에서 스키마 개체 (테이블, 저장된 procs, 사용 권한 등)를 관리하고 데이터베이스 스키마를 TFS와 잘 통합 할 수 있습니다.

VS Project의 스키마를 데이터베이스 서버에 배포하고 데이터 손실없이 데이터를 손실하지 않고 자동으로 수정 사항을 처리 할 수도 있습니다. 나는이 지침을 살펴 거하고 http://www.microsoft.com/downloads/details.aspx?FamilyID=bb3ad767-5f69-4db9-b1c9-8f55759846ed&displaylang=en

관련 문제