无法使用SQL Server CE database.file部署应用程序

时间:2010-11-13 01:56:29

标签: c# database file sql-server-ce

我正在尝试使用SQL Server database.sdf文件部署一个简单的Windows桌面应用程序。我已经按照本演练中的步骤进行了大约10次,但我仍然遇到问题。 http://msdn.microsoft.com/en-us/library/bb546200.aspx

在我的app.config文件中,我的连接字符串是:

<add name="VendorTracker_2._0.Properties.Settings.Database1ConnectionString"
     connectionString="Data Source=C:\Users\Eamon\Documents\Visual Studio 2008\Projects\VendorTracker 2.0\VendorTracker 2.0\Database1.sdf"
     providerName="Microsoft.SqlServerCe.Client.3.5" />

根据演练,Windows安装程序应该知道我正在使用SQL Server CE .sdf文件并创建一个新的连接字符串:

<add name="VendorTracker_2._0.Properties.Settings.Database1ConnectionString1"
     connectionString="Data Source=|DataDirectory|\Database1.sdf"
     providerName="Microsoft.SqlServerCe.Client.3.5" />

它会将此连接字符串添加到app.config文件中。现在我在app.config文件中列出了两个连接字符串。当我将应用程序部署到我的开发计算机上时,它工作正常,连接到.sdf文件没问题。

但是当我将安装文件夹及其中的所有内容复制到另一台“测试”计算机时,当我尝试运行该应用程序时出现以下错误:

  

路径无效。检查数据库的目录。 [Path = C:\ Users \ MyName \ Documents \ Visual Studio 2008 \ Projects \ VendorTracker 2.0 Database1.sdf]。

该应用程序继续运行,但没有数据,它不允许我将任何内容保存到数据库。

为什么.sdf文件没有使用连接字符串进行部署:

Data Source=|DataDirectory|\Database1.sdf
喜欢这样的假设?使我抓狂。我尝试了一切。有没有人成功使用SQL Server CE .sdf文件与独立的Windows桌面应用程序?我知道它们在移动设备上被大量使用,但这不应该有所作为。请帮忙。

Oceantrain

1 个答案:

答案 0 :(得分:1)

您必须手动更改连接字符串。另外,请仔细考虑放置文件的位置,因为并非所有位置都可写