SqlSugar解决SQLite访问的问题:Unable to load DLL 'SQLite.Interop.dll'

SqlSugar用的版本是4.5.9.5,访问SQLite数据提示错误。在本机调试一时没有什么错误,把代码发布到服务器上以后刚开始运行没有问题,一段时间后报错。

 

English Message : Connection open error . Unable to load DLL 'SQLite.Interop.dll': 操作成功完成。 (Exception from HRESULT: 0x00000000 (S_OK))
Chinese Message :  连接字符串出错了,实在找不到原因请先Google错误Unable to load DLL 'SQLite.Interop.dll': 操作成功完成。 (Exception from HRESULT: 0x00000000 (S_OK)).

参考文章地址:

http://www.cnblogs.com/muzhiye/p/4284070.html

通过上面的文章参考,SqlSugar用的版本是依赖SQLite.Interop.dll因此可能会经常报错。所以我就下来一个不依赖SQLite.Interop.dll的System.Data.SQLite.dll试试

SqlSugar用到的SQLite的System.Data.SQLite.dll版本是1.0.102.0

不依赖SQLite.Interop.dll的dll官方下载地址:http://system.data.sqlite.org/downloads/1.0.102.0/sqlite-netFx40-static-binary-bundle-Win32-2010-1.0.102.0.zip

其他版本的下载地址:

http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki

下载后复制里面System.Data.SQLite.dll替换到服务器上bin目录下的相同名称dll。这样就不依赖SQLite.Interop.dll了同时服务器上需要安装Microsoft Visual C++ 2010 SP1 Redistributable Package (x64)。这样就不容易出错了。

然后就解决了我的问题

 

attempt to write a readonly database

查了网上很多的解决方法

问题解决方法,本来SQLite的数据库是单独放到一个文件夹下的,并没有在web 的目录下。设置了各种用户的权限后都不可用,最后移植到web的App_Data文件夹下后,并设置了App_Data的权限就可以了-_-!

 

posted @ 2018-04-18 15:37  高山-景行  阅读(1466)  评论(0编辑  收藏  举报