2013-03-19 174 views
0

我在設置SDF數據庫的路徑時遇到了一些問題。WinCE:無法將數據插入到sdf數據庫中

我原來的連接

<add name="Model1Container" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlServerCe.4.0;provider connection string=&quot;data source=|DataDirectory|\Database1.sdf&quot;" providerName="System.Data.EntityClient" /></connectionStrings> 

然後我試圖使用ConfigurationManager中獲得的數據庫連接字符串,但它產生的,而不是使用連接字符串我有一個錯誤(元數據不支持)

之後,試了好幾種其他的方法,如:

string StartupPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase); 
     string datalogicFilePath = Path.Combine(StartupPath, "Database1.sdf"); 
     string connectionString = string.Format("DataSource={0}", datalogicFilePath); 

這一次將拋出URI格式異常

@"Data Source = |DataDirectory|\Database1.sdf" 

這個能夠爲ExecuteNonQuery返回1,但是我看不到它自己的任何變化。

然後我意識到它可能是複製到輸出目錄屬性。我試過「不要複製」,並且在bin \ database1.sdf找不到的地方產生了錯誤信息。我已將它重新設置爲「複製,如果更新」。

但是,當我使用完整路徑數據庫C:..................... \ Project \ database1.sdf時,它能夠更新數據庫。有沒有任何可能的方式來做到這一點,而不是提供一個完整的路徑?

回答

0

我得到了同樣的問題,終於解決了這個問題, 其實它保存數據,但不是在它。自衛隊顯示了服務器資源管理器(這是在應用程序通常的根文件夾),但在debug文件夾 的。自衛隊同樣當你發佈它所發佈的應用程序和通常插入數據的根目錄.sdf。希望我不會混淆你,它幫助你。 -Masology

0

嘗試使用您的本地路徑 數據源= C:\用戶\ ABC \文檔\ Visual Studio 2010的\項目\ ABC \ ABC \ Database1.sdf;密碼= QWER 234;堅持安全信息=真「