c# - SQL Server CE 数据库的连接字符串

标签 c# visual-studio-2008 windows-ce sql-server-ce connection-string

我正在尝试与 Windows CE 5.0 应用程序中的数据库建立连接,并且我正在使用 Compact Framework 2.0

数据库位于项目文件夹内:

C:\Documents and Settings\softdil\My Documents\Visual Studio 2008\Projects\Datalogic\Datalogic

这些是我用来连接和打开数据库的行:

SqlCeConnection conn = new SqlCeConnection();
conn.ConnectionString = "Data Source = Datalogic.sdf;";
conn.Open();

这给了我一个漂亮的“找不到数据库文件”错误消息。

我也尝试过使用绝对 uri 得到相同的结果:

conn.ConnectionString = "Data Source = C:\\Documents and Settings\\softdil\\My Documents\\Visual Studio 2008\\Projects\\Datalogic\\Datalogic;";

我在这里做错了什么?

可能与移动设备正在调试(执行)的应用程序有关?

我真的不这么认为,因为数据库在应用程序加载时工作,这意味着它与列表框关联并从数据库正确加载数据。

最佳答案

在 Win CE 应用程序中,我们使用以下方法获取执行文件的完整路径:

string StartupPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase);

使用 StartupPath 然后您可以将数据库名称添加到该路径并将其添加到连接字符串:

string datalogicFilePath = Path.Combine(StartupPath, "Datalogic.sdf");
string connectionString = string.Format("DataSource={0}", datalogicFilePath);

关于c# - SQL Server CE 数据库的连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6744134/

相关文章:

c++ - sqlite3中使用汉字

linux - ARM 在 WinCE 和 Linux 上的调用约定?

WinCE 平台上 webkit 的 C# Qyoto 绑定(bind)

c# - Null-Coalescing 运算符结果的隐式转换

c# - 监视 Windows Phone 8.1 中的 SIM 更改

visual-studio - 是否有 Visual Studio 自动保存配置设置?

visual-studio-2008 - 在 32 位和 64 位调试环境中为启动外部程序使用相同的调试设置

c# - 如何在Winform中使用CSS格式化 Crystal 报表?

C# 组合框禁用项目替代?

c# - 模拟界面没有意义?