我正在尝试使用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
答案 0 :(得分:1)
您必须手动更改连接字符串。另外,请仔细考虑放置文件的位置,因为并非所有位置都可写