C# SQLite引用警告处理器不匹配

C# SQLite引用警告处理器不匹配,c#,winforms,sqlite,C#,Winforms,Sqlite,我刚从SQL server改为SQLite,一切都很好,一切都很好,唯一困扰我的是,我收到了一条关于与SQLite引用不匹配的警告,在警告消息下面: 警告1的处理器体系结构之间不匹配 这个 正在构建的项目“MSIL”和参考的处理器体系结构 “System.Data.SQLite,Version=1.0.84.0,Culture=neutral,PublicKeyToken=db937bc2d44ff139, processorArchitecture=x86,“x86”。这种不匹配可能导致 运行

我刚从SQL server改为SQLite,一切都很好,一切都很好,唯一困扰我的是,我收到了一条关于与SQLite引用不匹配的警告,在警告消息下面:

警告1的处理器体系结构之间不匹配 这个 正在构建的项目“MSIL”和参考的处理器体系结构 “System.Data.SQLite,Version=1.0.84.0,Culture=neutral,PublicKeyToken=db937bc2d44ff139, processorArchitecture=x86,“x86”。这种不匹配可能导致 运行时失败。请考虑更改您的目标处理器架构。 通过Configuration Manager进行项目,以调整处理器架构 在你的项目和参考资料之间,或者 依赖于具有与项目的目标处理器体系结构匹配的处理器体系结构的引用。 活鸽客户端

我安装了错误的引用吗?或者我真的需要将应用程序的目标设置为x86吗?因为这不是我想要的,有没有人对如何摆脱这个警告有什么建议


谢谢你的时间

如果希望使用此ADO.NET连接器,则必须指定程序的体系结构。这是因为此程序集是混合模式程序集—它包含本机代码—因此无法在其他体系结构下运行。如果未为可执行文件指定体系结构,运行时将在64位计算机上使用64位实例,引用的程序集将无法加载。

安装Nuget软件包“System.Data.SQLite(x86/x64)”以消除此警告。

我在2020年解决的问题(Microsoft Visual Studio Community 2019) 遵循以下步骤


构建->配置管理器->活动解决方案平台->选择x86

一种解决方案是将项目设置为x86。这将更正警告,但您的项目将始终作为32位进程运行,即使在64位计算机上也是如此。另一个选择是制作两个版本,每个架构一个,并引用适当的程序集。只要阅读此表单,他们说它还没有解决:但是如果我将项目解决方案更改为x86,它仍然可以在x64机器上工作?是的,当然可以。它将在64位版本的Windows中包含的32位WoW兼容层下运行。有关更多参考,请参阅此常见问题解答条目: