2012-09-02 6 views
0

데이터베이스 파일특정 폴더에 저장하려고합니다. 다음 코드를 사용하여이 작업을 시도하고 있습니다.데이터베이스가 선택된 폴더에 저장되지 않습니다

  dpath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); 

      AppDomain.CurrentDomain.SetData("DataDirectory", dpath); 
      newConnectString = "Data Source=" + dpath + "\\" + filename; 

      Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); 
      config.ConnectionStrings.ConnectionStrings[ConnectStringName].ConnectionString = newConnectString; 
      config.Save(ConfigurationSaveMode.Modified, true); 
      ConfigurationManager.RefreshSection("connectionStrings"); 

프로그램을 실행하면 새 파일이 대상 폴더에 생성되지 않습니다. 그것은 실행 파일과 함께 저장하고 있습니다. 내가 뭘 잘못하고 있는지에 대한 통찰력?

답변

0

현재 코드가 구성 파일 만 변경하면 File.Copy 데이터베이스 파일을 필요한 forlder에 복사하거나 SqlCeEngine.CreateDatabase를 새 연결 문자열과 함께 사용해야합니다.

+0

답변 해 주셔서 감사합니다. 그러나 질문에 답할 수 있는지 잘 모르겠습니다. File.Copy 데이터베이스 싶지만 올바른 경로를 가져올 수없는 | DataDirectory | 에서 복사 할 수 있습니다. 구성 파일에서 연결 문자열을 성공적으로 변경하면 데이터베이스가 존재하지 않는다는 오류 메시지가 프로그램에 전달됩니다. 대신 기본 DataDirectory | 데이터베이스에서 데이터베이스에 계속 액세스합니다. 폴더를 사용하면 구성 파일을 성공적으로 변경했지만 성공적으로 연결하지 못했다고 생각하게됩니다. – Dominique

관련 문제