代码之家  ›  专栏  ›  技术社区  ›  Jack

System.EntryPointNotFoundException+无法安装包“sqlite.interop.dll 1.0.103”。我的项目目标“.netframework,版本=v4.6.1”

  •  0
  • Jack  · 技术社区  · 8 年前

    我有一个从源代码管理下载的工作项目。它使用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 回复  |  直到 8 年前
        1
  •  0
  •   Jack    8 年前

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

    Update-Package -reinstall
    

    在新项目的Nuget包管理器中。

    推荐文章