我有一个引用 FluentMigrator.Runner 的迁移项目。此程序集引用 System.Data.SQLite.dll 的 32 位版本。因此,如果我将此项目部署到我们的 64 位服务器上,则会出现异常:
试图加载格式不正确的程序。
我什至不需要 SQLite,如果我删除解决方案中的每个 System.Data.SQLite.dll 一切正常。但我正在寻找更好的方法来解决这个问题......因为如果 FluentMigrator 更新,我将再次拥有这个 32 位程序集。
有没有办法告诉 Visual Studio 不要将此间接引用的程序集复制到输出目录?还是有比删除所有不需要的 dll 更好的解决方案?
编辑:我正在使用 FluentMigrator 的最新 Nuget 包(1.0.1.0)
Edit2:我从 FluentMigrator.Tools NuGet-Package 中引用了 FluentMigrator.Runner.dll 的 AnyCPU 版本,因为 FluentMigrator-Package 中的 FluentMigrator.Runner.dll 也只有 32 位。但我的问题是 System.Data.SQLite.dll 是 32 位版本。FluentMigrator.Tools 包的 AnyCPU 文件夹中还有另一个 System.Data.SQLite.dll,但是这个 DLL 是二进制等于 32 位版本的(为什么??)...