0

我正在使用.Net 4.0Access 数据库在Visual Studio 2010中构建应用程序。

我已经指定了我的数据库的现有路径,即D:/project/record.accdb. 构建应用程序后,当我在自己的计算机上安装并运行它时,它给了我一个数据库路径错误。

我的应用程序在单击F5(调试)时工作正常,但它显示错误

“找不到路径。”

我已经使用以下步骤构建了我的项目:

  1. 建造
  2. 构建“项目名称”
  3. 使用 CD/DVD 进行安装
  4. 结束

我该如何解决这个问题?

4

1 回答 1

0

听起来,在您的 Dev PC 上它运行良好,但在您想要将其部署到的另一台机器上却没有。

检查您是否在另一台电脑(没有开发工具的电脑)上安装了 Microsoft Access。安装 Access 后重复测试。


更新: 您最近写信给我说该路径不起作用。尝试以下操作以创建有效的数据源字符串:

  1. 在桌面上,创建一个新的空文本文档(右键单击,然后选择新建>文本文档)
  2. 重命名该文档,使其具有扩展名.UDL,例如Access.UDL
  3. 双击文件。“数据链接属性”打开。
  4. 转到第一个选项卡(提供程序),选择“Microsoft Office XX.X Access Database Engine OLE DB Provider”(其中 XX.X 是您正在使用的 Office 版本)
  5. 转到第二个选项卡(连接),在“1。输入数据源和/或数据位置”中,您指定 Access 数据库的完整路径,例如C:\Documents and Settings\All Users\My Documents\Database1.accdb
  6. 单击“测试连接”按钮以确保连接成功。
  7. 用“确定”关闭对话框。

如果您之后使用 NOTEPAD 打开 UDL 文件(在我们的示例 Access.UDL 中),您会看到正确的数据源字符串:

[oldb]

; 此行之后的所有内容都是 OLE DB 初始化字符串

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Documents and Settings\All Users\My
Documents\Database1.accdb;Persist Security Info=False

您可以直接在 C# 代码中使用此字符串,也可以将其存储在 app.config 文件中并加载。如果路径应该是动态的,您可以执行以下操作(以下示例使用硬编码的数据源字符串):

var strDS=string.Format(
    "Data Source={0}\Database1.accdb;Persist Security Info=False", strPath);

这会将存储在变量中的路径插入strPath到数据源字符串strDS中。如前所述,您还可以从 app.config 加载此字符串。

于 2012-11-09T15:55:59.847 回答