每次尝试运行移动应用程序时,我都会遇到以下问题:
System.DllNotFoundException:
'SQLite.Interop.dll assembly:<unknown assembly> type:<unknown type> member:(null)'
将其放在某种上下文中:
我正在Xamarin.Forms [4.3.0]
上进行开发(在本例中,在Android 9.0 x86
上运行构建(。客户端库在.NET Standard 2.0
上运行,我已经从NuGet
安装了System.Data.SQLite.Core(1.0.112(。
当你查找我的问题时,你会发现有人说要把SQLite.Interop.dll
放在x86/x64
文件夹中
但是在查找这些文件时,根本没有.NET
Standard,只有.NET Framework
。我尝试使用来自.NET Framework 4.6
版本的预编译静态链接二进制文件的SQLite.Interop.dll
。
项目结构屏幕截图
同样的错误。
不幸的是,我不可能切换SQLite
库,因为我正在将桌面版本移植到使用此库的移动设备上。
如果他们没有把你需要移植的类和函数弄得一团糟,你可以使用"Microsoft.Data.SQLite",这是有区别的,但并不像你需要用"SQLite-Net-Pcl"做的疯狂的废话那么远
非常感谢您的精彩回答。我使用sqlite.net-pcl包,遇到了一些奇怪的错误,在网上搜索答案,但没有找到任何有效的答案。我添加了Microsft.Data.Sqlite和Bingo!我所有的问题都解决了。我只是遵循了发布在上的语法:https://github.com/dotnet/docs/blob/main/samples/snippets/standard/data/sqlite/HelloWorldSample/Program.cs