当前位置:Gxlcms > 数据库问题 > WPF项目升级sqlite-net-pcl时遇到Library e_sqlite3 not found的问题解决办法记录

WPF项目升级sqlite-net-pcl时遇到Library e_sqlite3 not found的问题解决办法记录

时间:2021-07-01 10:21:17 帮助过:92人阅读

项目中为了方便的存储本地数据,使用了SQLite数据库作为数据存储,再设计时DB、models引用了sqlite-net-pcl,那么项目再升级sqlite-net-pc 1.7.335l版本后后,遇到了很奇怪的一个问题。

再执行初始化数据库时new SQLiteAsyncConnection(dbPath); 语句无法成功执行。提示Library e_sqlite3 not found。看到这个错误时开始观察并分析问题:

1、升级后启动程序目录下确实没有了e_sqlite3.dll,尝试拷贝了e_sqlite3 同样无法正常执行代码。

2、因为2个程序集同时使用了sqlite-net-pcl。怀疑是因为设计时把2个程序集同时引用sqlite-net-pcl导致的问题。

开始第一轮搜索百度和必应。并没有搜到能解决问题答案。

 

针对第一个问题尝试拷贝e_sqlite3.dll和百度和biying的结果都无法解决时,就开始尝试自己写DEMO复现并解决该问题。我把解决方案为了UI的应用程序、DB程序集、只有这2个工程,只包含初始化sqlite代码。并尝试在DB程序集安装sql-net-pcl。并进行升级操作,发现同样有问题。

 

然后尝试使用Github上的Sqlite上开源的代码,但是依然会出现这个BUG。issues中也寻找到了类似的问题。但是没有提供解决方案,最终在stack overflow上搜到了一个解决办法。

技术图片

 

 

我尝试在启动的工程添加了sqlite-net-pcl。发现解决了这个问题。但是完全没有必要再启动的工程中添加sqlite-net-pcl,虽然解决了这个问题。但是再issues中提出了针对这个问题的疑问。如果后续作者有更新,我会把原因更新到博客中。

WPF项目升级sqlite-net-pcl时遇到Library e_sqlite3 not found的问题解决办法记录

标签:解决办法   博客   blog   图片   https   数据库   wpf   提示   bpa   

人气教程排行