System.EntryPointNotFoundException +无法安装包'SQLite.Interop.dll 1.0.103'。我的项目目标是'.NETFramework,Version = v4.6.1'

时间:2018-09-11 04:15:56

标签: c# .net sqlite nuget package-managers

我有一个可以从源代码管理中下载的工作项目。它使用nuget软件包sqlite-net-pcl。它本身运行良好。但是,当我将启动项目更改为自己的项目(该项目调用上面的项目,并且没有自己的程序包)时,代码在我调用时消失

dbConnection.Open();

反对:

dbConnection = new SQLiteConnection("Data Source=" + dbFile + ";Version=3;");

,并显示错误消息:

System.EntryPointNotFoundException: 'Unable to find an entry point named 'sqlite3_open_interop' in DLL 'SQLite.Interop.dll'

当我在网上查找此消息时,会得到类似here的结果,告诉我安装/更新SQLite.Interop.dll,但是,无论是建议的版本还是最新的版本似乎都不兼容原始项目中的.net版本,或我要包含的项目版本(.net版本4.5.2或4.6.1)

此外,鉴于我实际上所做的只是更改启动项目,因此原始错误似乎很奇怪。 这里的任何想法都很好-我准备好从黑暗和糟糕的软件包管理器世界回到堪萨斯州...

1 个答案:

答案 0 :(得分:0)

看来,如果我想在从新启动项目中调用时使用现有项目中的软件包,那么我也需要在其中安装库。我只是通过将packages.config复制到我的新项目中来复制所有软件包,然后运行

Update-Package -reinstall

在新项目的nuget程序包管理器中。