c# - System.EntryPointNotFoundException + 无法安装包“SQLite.Interop.dll 1.0.103”。我的项目目标是'.NETFramework,Version=v4.6.1'
问题描述
我有一个从源代码管理下载的工作项目。它使用 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'
当我在线查看此消息时,我得到的结果类似于此处告诉我安装/更新 SQLite.Interop.dll,但是,建议的版本或最新版本似乎都与原始的 .net 版本不兼容项目,或我尝试包含的项目版本(.net 版本 4.5.2 或 4.6.1)
更重要的是,最初的错误似乎很奇怪,因为我真正所做的只是改变启动项目......这里的任何想法都会很好 - 我即将准备好从包管理器的黑暗和可怕的世界回到堪萨斯州...
解决方案
看来,如果我想在从新的启动项目调用时使用现有项目中的包,那么我还需要在那里安装库。我只是通过将 packages.config 复制到我的新项目来复制所有包,然后运行
Update-Package -reinstall
在新项目的 nuget 包管理器中。
推荐阅读
- python - IndexError:用作索引的数组在python中必须是整数(或布尔)类型
- modelica - Modelica - 如何最好地调整从库到应用程序代码的导入
- java - 如何设置图像 JavaPOS 的打印位置
- python - Python - 带有数据框的 mysql 数据
- r - R中的交互式地图向下钻取能力
- python - 使用 networkx 为每个句子创建一个图
- angular - Angular MonoRepo Nx - 在应用程序中使用库
- graph - Gremlin - 按成本排序最短加权路径输出
- amazon-web-services - AWS s3 访问因所有权而被拒绝?
- java - 如何在 WKT 几何中绘制带孔的多边形