首页 > 代码库 > 未能加载文件或程序集“System.Data.SQLite”

未能加载文件或程序集“System.Data.SQLite”

未能加载文件或程序集“System.Data.SQLite”或它的某一个依赖项。试图加载格式不正确的程序。

说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.BadImageFormatException: 未能加载文件或程序集“System.Data.SQLite”或它的某一个依赖项。试图加载格式不正确的程序。

源错误:

执行当前 Web 请求期间生成了未经处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。

程序集加载跟踪: 下列信息有助于确定程序集“System.Data.SQLite”未能加载的原因。
警告: 程序集绑定日志记录被关闭。 要启用程序集绑定失败日志记录,请将注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD)设置为 1。 注意: 会有一些与程序集绑定失败日志记录关联的性能损失。 要关闭此功能,请移除注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog]。 
 
 
总结了一下各种可能的解决方法如下:
(不推荐)1. 在x64的机子上使用了错误版本的System.Data.SQLite.dll,即x86,需要安装合适版本的System.Data.SQLite.dll,现给出各种找到的下载地址(不保证有效果,毕竟这问题也不是全都相同的):
1)http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki
2)http://sourceforge.net/projects/sqlite-dotnet2/files/
 
安装完后在X(你的程序安装盘):\Program Files (x86)\SQLite.NET\bin\x64 目录下也有一个System.Data.SQLite.DLL文件,只要在程序中引用这个文件这可以了,如果是一个工程多个项目就要对多个项目添加引用
 
(推荐)2. 通过更改IIS的应用程序池来解决。
在IIS界面选择应用程序池->选择所使用的.net 版本->高级设置->将"使用32位应用程序"设为True

未能加载文件或程序集“System.Data.SQLite”