近来在部署一个站点到客户的服务器 IIS 上时,打开后却出现一个错误的页面,系统提示System.Data.SqlLite.dll 末找到,在站点部署到客户的服务器之前时,在本地测试,却没有发现什么异常,也不会报告 System.Data.SqlLite.dll 末找到这样的错误,发布包中的bin 文件夹中是有 System.Data.SqlLite.dll 这个程序集文件的,可系统就是报告 System.Data.SqlLite.dll 末找到,这究竟是什么原因,在查找到相关的资料后,终于明白了 原来客户的服务器是 x64 架构的, 而本地的计算是 X86 架构的,在生成的时候,虽然设置了 Any CPU ,但 System.Data.SqlLite.dll 这个文件却不会自动转换成能在 X64 架构下识别的可执行文件.对应的具体错误和解决过程如下:
解决方法: 打开iiis, 在应用程序池中找到站点所使用的应用程序池,然后在右键菜单中选择高级属性,将 启用32位处理器设置为true即可.