2012-12-14 2 views
2

예약 시스템을 만들고 있지만 특정 경로에서 데이터 소스의 상대 경로로 변경할 때 내 데이터베이스 연결에 문제가 발생했습니다. 데이터베이스를 업데이트 할 수있는 특정 데이터 소스가있을 때 새 항목을 추가하십시오. 하지만 상대 경로로 변경하면 런타임에 모든 것이 잘 작동하고 모든 것이지만 프로그램을 닫으면 변경되거나 추가 된 모든 항목이 삭제되고 다시 열 때 아무 것도 저장되지 않습니다. 이것은 상대 경로가 보이는 방법입니다.데이터를 저장하는 데이터베이스에 대한 상대 경로와 관련된 문제

SqlConnection SQLCN = new SqlConnection 
(@"Data Source=.\SQLEXPRESS; 
AttachDbFilename=|DataDirectory|\Databas\TestDatabase.mdf; 
Integrated Security=True;User Instance=True"); 

왜 이런 식입니까?

답변

0

각 빌드에서 데이터베이스를 덮어 쓰기 때문입니다.

아마도 Build ActionContent이고 Copy to Output DirectoryCopy If Newer으로 설정되었을 수 있습니다. Copy if newer 값에 대한 스티브의 link @에서

:

우리는 .MDB 또는의 .mdf 파일이 옵션을 사용하지 않는 것이 좋습니다. 데이터를 변경하지 않아도 데이터베이스 파일이 변경 될 수 있습니다. 예를 들어, 서버 탐색기에서 테이블 노드를 확장하여 데이터 파일에서 연결을 열면 더 새로운 것으로 표시 할 수 있습니다.

관련 문제