Xamarin SQLite“这是'诱饵'”
问题描述:
我遵循this指南试图创建一个SQLite数据库到我的专业。但总是得到同样的错误,做文章的确切步骤。Xamarin SQLite“这是'诱饵'”
System.Exception: This is the 'bait'. You probably need to add one of the SQLitePCLRaw.bundle_* nuget packages to your platform project.
答
您是否已将SQLite包添加到所有项目中?您需要将它添加到应用程序项目以及PCL中。
这是错误告诉你的。它使用了一种叫做“诱饵和开关”的技巧,它在PCL中安装了一个具有特定接口的虚拟程序集,在Android和iOS应用程序中,它安装了一个具有相同接口的平台特定程序集,实际上与数据库进行交互。这个想法是针对PCL的代码,但是在运行时使用了平台特定版本的库。您可以在https://web.archive.org/web/20161209075521/http://log.paulbetts.org/the-bait-and-switch-pcl-trick/
中了解关于此模式的更多信息。实际上,此错误告诉您,您尚未在特定于平台的项目中安装NuGet软件包。
答
尽管按照错误消息中的说明并安装缺少的库,但仍然遇到此问题。
干净&重建解决它
+0
工作对我来说... –
答
我已经安装的软件包(SQLite的净PCL),但我卸载它们,然后重新安装。然后我清理解决方案并重建它,现在它可以工作。
你安装了package'SQLite-net PCL'吗? –