2016-06-28 107 views
1

我使用Microsoft SQL Server Compact Edition 3.5在C#中開發了一個桌面應用程序。SQL Server Compact Edition 3.5數據庫訪問被拒絕

當我運行從解決方案文件夾(bin\releasedebug.exe文件它工作正常,但是當我試圖通過創建設置部署它,它顯示了未處理的異常:

您沒有權限訪問CustomersDB.sdf文件。

請注意,沒有路徑錯誤是正確的。

string lokasifile = Environment.CurrentDirectory + "\\CustomersDB.sdf"; 
string stringkoneksi = "Data Source = \"" + lokasifile + "\""; 
SqlCeConnection koneksi = new SqlCeConnection(stringkoneksi); 
koneksi.Open(); 
+1

當我看到權限錯誤,我立刻想到它跑作爲管理員或你的文件移動到其他地方。不知道它是否可以工作,但畢竟沒有什麼不好的:D –

+0

在應用程序池中運行網站的帳戶沒有sdf文件的權限。授予該文件的權利。或者,該文件不存在於您認爲它的地方。無論如何,您應該使用App_Data和| DataDirectory |。如果你這樣做,它會一直按預期工作,不用擔心。 – Will

+0

SQL CE一次不允許多個併發連接。 – Yogesh

回答

0
SecurityException 

這只不過是調用者沒有相應的權限。 Environment.CurrentDirectory Property

try 
{ 
    //Call Path here you will get to what the exactly error is 
} 
catch (Exception ex) 
{ 
    if (ex is DirectoryNotFoundException|| ex is IOException|| ex is SecurityException) 
    { 
      //Your handling here 
    } 
    else 
    { 
      throw; 
    } 
} 
+0

目錄存在,文件存在,路徑正確,問題是隻有訪問被拒絕。 –

+0

在屬性 –

+0

中給予該文件所需的權限,即「如何設置權限」 –

相關問題