【发布时间】:2015-01-26 08:33:07
【问题描述】:
我在 MVC Web 应用程序中使用 Nuget 包 System.Data.SQLite。当我尝试清理解决方案并重建时,似乎存在锁定问题。我得到的错误信息是:
Unable to delete file "bin\x64\SQLite.Interop.dll". Access to the path '\bin\x64\SQLite.Interop.dll' is denied.
我认为数据库仍然处于打开状态或 .dll 仍在使用中,但我找不到任何文档或对同一问题的任何引用。这个question 似乎是一个类似的问题,但没有为我的问题提供解决方案。
这是我用来写入 SQLite 数据库的代码 sn-p:
var conn = new SQLiteConnection("Data Source=" + connectionString);
conn.Open();
var debugEntriesTableQuery = "CREATE TABLE ...";
var cmd = conn.CreateCommand();
cmd.CommandText = debugEntriesTableQuery;
cmd.ExecuteNonQuery();
conn.Close();
是否需要另一个步骤来正确关闭与数据库的连接并通知 dll 并且连接已关闭?
我在已添加到 nuget 包并在另一个解决方案中使用的数据解决方案中使用此代码。我只在构建/清理使用我的 nuget 包的解决方案时遇到这个问题。
【问题讨论】:
-
你解决过这个问题吗?
-
我的朋友找到了解决方案:stackoverflow.com/a/22514442/2544235
标签: c# asp.net visual-studio sqlite dll