0

我创建了一个.NET Standard 2.0类库项目,在被WPF App (.NET Framework 4.8)项目引用时可以正常工作。但是,当MS Office VSTO 项目(也使用 .NET Framework 4.8)引用同一个库时,我在如下所示的代码行中收到以下错误:

备注

  1. 我正在使用VS2019, Windows20 Pro, Microsoft.Data.Sqlite和来自同一链接的以下示例。
  2. 完全相同的代码在WPF应用程序上运行良好。
  3. 我也尝试安装SQLitePCLRaw.core包(如错误中所述)但仍然是同样的错误。虽然,我认为我不应该安装这个包,因为我不必用WPFapp.
  4. 文件的相同副本MySQLiteDb.db驻留在bin\Debug文件夹VSTO以及WPF文件夹中。所以,这应该不是问题

错误

FileLoadException: Could not load file or assembly 'SQLitePCLRaw.core, Version=2.0.2.669, Culture=neutral, PublicKeyToken=1488e028ca7ab535' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

代码[错误发生在行using (SqliteConnection db = ....)

string SQLiteDbpath = System.IO.Path.Combine(GetAppInstalPath, "MySQLiteDb.db");

using (SqliteConnection db = new SqliteConnection($"Filename={SQLiteDbpath}"))
{
    db.Open();

    using (SqliteCommand insertCommand = new SqliteCommand())
    {
        ......
        insertCommand.ExecuteNonQuery();
    }
}
4

1 回答 1

0

FileLoadException:无法加载文件或程序集“SQLitePCLRaw.core,版本=2.0.2.669,Culture=neutral,PublicKeyToken=1488e028ca7ab535”或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(来自 HRESULT 的异常:0x80131040)

您需要将丢失的文件 (SQLitePCLRaw.core) 包含到包含加载项文件的文件夹中。

于 2020-05-31T19:40:08.053 回答