【问题标题】:Database path error after building C#.Net 4.0 application构建 C#.Net 4.0 应用程序后的数据库路径错误
【发布时间】:2012-11-09 15:15:10
【问题描述】:

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

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

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

“找不到路径。”

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

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

我该如何解决这个问题?

【问题讨论】:

  • 我们需要更多信息。错误到底说了什么?您可以发布打开它的代码吗?您是否在自己的计算机上安装了所需的 MSSQL 库?
  • @MikeWebb for Access 数据库你不需要 MSSQL 库
  • @Stefan P - 如果他在他的程序中专门使用 MSSQL 库,他不需要它们吗?从他的帖子看来,这就是他正在使用的。
  • @Stefan P - 好的,nvmd。看起来这不是问题。
  • 对不起 Stefan P 先生。我已经编辑了我的问题,它之前是 MSSQL。

标签: c# .net visual-studio ms-access .net-4.0


【解决方案1】:

听起来,它在您的开发 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 中),您会看到正确的数据源字符串:

[oledb]

;此行之后的所有内容都是 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 加载此字符串。

【讨论】:

  • 只有路径错误。有没有办法在连接字符串中给出路径,该路径将在部署它的任何 pc 上匹配
猜你喜欢
  • 1970-01-01
  • 2016-07-10
  • 1970-01-01
  • 2012-06-19
  • 2016-11-28
  • 1970-01-01
  • 2011-12-27
  • 1970-01-01
  • 2013-11-01
相关资源
最近更新 更多