Xamarin SQLite"这是'诱饵'"

时间:2016-12-27 11:38:35

标签: sqlite xamarin

我按照this指南尝试为我的proyect创建一个SQLite数据库。但总是得到同样的错误,完成文章的确切步骤。

    System.Exception: This is the 'bait'.  You probably need to add one of the SQLitePCLRaw.bundle_* nuget packages to your platform project.

3 个答案:

答案 0 :(得分:13)

您是否已将SQLite包添加到所有项目中?您需要将其添加到应用程序项目以及PCL中。

这就是错误告诉你的。它使用一种称为“诱饵”和“切换”的技巧。因此,它在具有特定接口的PCL中安装虚拟组件,并且在Android和iOS应用程序中,它安装具有相同接口的平台特定组件,该接口实际上与数据库进行交互。您的想法是针对PCL编写代码,但在运行时使用该库的特定于平台的版本。您可以在https://web.archive.org/web/20161209075521/http://log.paulbetts.org/the-bait-and-switch-pcl-trick/

了解有关此模式的更多信息

基本上,这个错误告诉您,您还没有在特定于平台的项目中安装NuGet包。

答案 1 :(得分:12)

尽管我按照错误消息中的说明操作并安装了缺少的库,但我遇到了此问题。

干净&重建解决了它

答案 2 :(得分:1)

我安装了软件包(SQLite-net PCL),但我卸载了它们,然后重新安装。然后我清理了解决方案并重新构建了它,现在它可以工作了。