我正在使用.Net 4.0和Access 数据库在Visual Studio 2010中构建应用程序。
我已经指定了我的数据库的现有路径,即D:/project/record.accdb
. 构建应用程序后,当我在自己的计算机上安装并运行它时,它给了我一个数据库路径错误。
我的应用程序在单击F5(调试)时工作正常,但它显示错误
“找不到路径。”
我已经使用以下步骤构建了我的项目:
- 建造
- 构建“项目名称”
- 使用 CD/DVD 进行安装
- 结束
我该如何解决这个问题?
我正在使用.Net 4.0和Access 数据库在Visual Studio 2010中构建应用程序。
我已经指定了我的数据库的现有路径,即D:/project/record.accdb
. 构建应用程序后,当我在自己的计算机上安装并运行它时,它给了我一个数据库路径错误。
我的应用程序在单击F5(调试)时工作正常,但它显示错误
“找不到路径。”
我已经使用以下步骤构建了我的项目:
我该如何解决这个问题?
听起来,在您的 Dev PC 上它运行良好,但在您想要将其部署到的另一台机器上却没有。
检查您是否在另一台电脑(没有开发工具的电脑)上安装了 Microsoft Access。安装 Access 后重复测试。
更新: 您最近写信给我说该路径不起作用。尝试以下操作以创建有效的数据源字符串:
.UDL
,例如Access.UDL
C:\Documents and Settings\All Users\My Documents\Database1.accdb
如果您之后使用 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 加载此字符串。