无法在程序中打开sqlite数据库文件 - c#

我正在尝试运行我制作的程序(通过“高级安装程序”创建了一个安装程序),但它一直说无法打开数据库(sqlite)文件。我检查了路径,并认为它们匹配,因为它在Visual Studio中运行良好。 App.config连接字符串为:

<connectionStrings>
   <add name="db" connectionString="Data Source=qbc-members.sqlite;Version=3;" />
</connectionStrings>

这是项目目录中位置的屏幕截图:

无法在程序中打开sqlite数据库文件 - c#

这是实际的异常消息:

无法在程序中打开sqlite数据库文件 - c#

就像我说的那样,它在Visual Studio中调试时按预期运行。当我检查程序的安装位置(C:\ Program Files(x86)\ user \ qbc)时,它将显示目录内的sqlite数据库文件以及实际的.exe文件。因此,我对为什么找不到文件感到困惑(因为我尝试查找答案,而我认为相关的答案是找不到文件)。这也是实际程序目录(一旦安装)的屏幕截图。

无法在程序中打开sqlite数据库文件 - c#

如您所见,文件在那里。关于它为何引发此异常的任何想法?

任何帮助,将不胜感激。

谢谢!

(对不起,如果我的问题不清楚,请告诉我,如有需要,我会尝试添加更多信息)。

参考方案

该问题很可能是应用程序没有对C:\Program Files (x86)\user\qbc目录的写权限。这是必需的,因为SQLite在带有数据库文件的目录中创建了一个锁定文件。

为启动应用程序并应解决该问题的用户设置目录写许可权。

将谓词<T>转换为Func <T,bool> - c#

我有一个包含成员Predicate的类,希望在Linq表达式中使用该类:using System.Linq; class MyClass { public bool DoAllHaveSomeProperty() { return m_instrumentList.All(m_filterExpression); } private IEnumerable&…

如何在JavaScript中将多个h1元素替换为h1,h2,h3,h4,h5,h6? - javascript

@foreach (var item in Model) { <div class="panel-heading"> <h1> <a href="#">@item.Title</a> </h1> </div> } 结果; (每页发布数:6)<…

jQuery和Gridview更新面板不起作用 - c#

我必须按照某些给定条件实现gridview的闪烁:gridview row blinking based on some conditions我能够成功实现它,但是随后我被要求在5秒钟内自动刷新gridview,为此我使用了ajax更新面板和计时器,但随后出现如下新的JavaScript错误:码: <form id="form1" …

Asp.net发送信息表单到页面 - c#

我正在尝试使用弹出窗口中的新信息更新旧页面。到目前为止,我尝试过将结果保存在会话中Session["Data"] = DLvrijecampingplaatsen.SelectedItem; 然后当它达到Page_Load时,将其重新加载回旧页面if (Session["Data"] != null) { LBkies…

WPF AvalonDock添加文档 - c#

我有一个带有AvalonDock的窗口。在启动时,将打开一个文档,其中充满LocControllers用户控件(LocControllersViewModel)。现在,当双击LocController时,我想让LocController用户控件在新文档中打开。因此,第一个文档始终是概述,充满了LocController用户控件,而其他文档则在双击后添加。我已…