在构造System.Data.SQLite.SQLiteConnection时,什么原因导致System.BadImageFormatException

我已经把代码分解成最小的声明:

Dim cn As System.Data.SQLite.SQLiteConnection 

从WinForm应用程序中调用代码时出现以下错误:

System.BadImageFormatException:无法加载文件或程序集“System.Data.SQLite,版本= 1.0.65.0,文化=中性,PublicKeyToken = db937bc2d44ff139”或其依赖项之一。 试图加载格式不正确的程序。 文件名:'System.Data.SQLite,Version = 1.0.65.0,Culture = neutral,PublicKeyToken = db937bc2d44ff139'

然而,从MSunit testing调用相同的代码我没有得到错误,加上完整的代码集按预期工作。

SqlLite包含非托pipe代码,除非您部署64位版本,否则无法在64位操作系统上运行它。 快速修复:Project + Properties,Build选项卡,Platform Target = x86。

确保你使用正确的程序集相对于32位和64位。

我通过NuGet下载了一个新版本的SQLite DLL来解决这个问题: http : //gurustop.net/blog/2011/05/19/sqlite-database-nuget-package-common-problems-solved/