2011-03-08 9 views
0

VS 2010을 사용하여 Outlook 2010 용 추가 기능을 만들고 있습니다. 데이터를 로컬에 저장하는 방법을 찾고 있었는데 많은 사람들이 Sql CE를 제안하고 있음을 확인했습니다. 나는 그것을 밖으로 시도하고이 오류 파일 이름에 실행 상태로 유지가 유효하지 않습니다 : 데이터 소스 = | DataDirectory를 | \ data.sdfSqlServerCe 파일 이름이 잘못되었습니다.

string conString = Properties.Settings.Default.dataConn; 

     SqlCeConnection dbConn = new SqlCeConnection(conString); 

     try 
     { 
      using (SqlCeConnection con = new SqlCeConnection(conString)) 
      { 
       con.Open(); 
      } 
     } 
     catch(Exception e) 
     { 
      MessageBox.Show(e.ToString()); 
     } 

나는 튜토리얼은 여기에 표시된 사용 : http://www.dotnetperls.com/sqlce

어떤 도움이 것 감사하겠습니다!

감사합니다.

답변

0

| DataDirectory | 런타임에 확장되는 연결 문자열의 특수 변수입니다. 다음과 같이 확장됩니다.

- For applications placed in a directory on the user machine, this will be the app's (.exe) folder. 
    - For apps running under ClickOnce, this will be a special data folder created by ClickOnce 
    - For Web apps, this will be the App_Data folder 

Outlook 플러그인에서 작동하지 않습니다. 내가 실행중인 컨텍스트가 그 값을 설정하지 않는다고 추측합니다. 당신이 중 하나는 연결 문자열에서 데이터베이스에 대한 전체 경로를 제공하는 (| DataDirectory를 | 대체) 시도 할 수 동적으로 사용하여 응용 프로그램 도메인에 DataDirectory를의 값 또는 설정을 다음

AppDomain.CurrentDomain.SetData("DataDirectory", newpath) 

Working with local databases에서보기를위한 되세요 자세한 정보.

관련 문제