【问题标题】:Unable to access database, could not find part of the path using SQLite in .NET无法访问数据库,无法在 .NET 中使用 SQLite 找到部分路径
【发布时间】:2013-01-14 21:41:24
【问题描述】:

我用 Visual Studio 制作了一个程序,在发布并安装在另一台机器上之后,每当它需要访问数据库时,它都会在创建连接字符串的原始项目文件夹中查找。 “C:\Users\Cody\Dropbox\Visual Studio 11\Projects\OverPower\OverPower\opdata.sqlite” 这个路径当然在另一台计算机上不存在,这就是为什么我在尝试访问数据库时收到错误,但我认为发布/部署后它会重定向到安装目录以找到此文件。我还尝试将文件设为资源并将数据库的连接字符串和文件位置更改为上述文件位置,但要通过资源文件夹。

【问题讨论】:

  • 请向我们展示您的代码。
  • 如何构建连接字符串?你是从配置文件中读取的吗?如果是这样,您是否将此配置文件与您的应用程序一起分发?

标签: .net database visual-studio sqlite


【解决方案1】:

我最终找到了一篇有意义的帖子,它甚至还有一个示例程序可以运行并查看它是如何工作的。我更改了一些内容并将 settings.vb 和 ConnectionStringBuilder.vb 类复制到我的项目中。

这就是我的 ConnectionStringBuilder 类的样子...

Dim path = Application.StartupPath + "\op_card.sqlite"
' Let's build our connection string.
Dim sqlConnString As New System.Data.SqlClient.SqlConnectionStringBuilder() With {
  .DataSource = path
}
Return sqlConnString.ConnectionString

对于 settings.vb 类,我只将底部的字符串 Me(, 更改为我在 Settings.settings 或 My.Settings 文件中找到的属性名称。这是指向帮助我的文章....

How to change default connection string setting during runtime

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-09-19
    • 2018-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多