2016-12-27 26 views
9

我遵循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. 
+0

你安裝了package'SQLite-net PCL'嗎? –

回答

12

您是否已將SQLite包添加到所有項目中?您需要將它添加到應用程序項目以及PCL中。

這是錯誤告訴你的。它使用了一種叫做「誘餌和開關」的技巧,它在PCL中安裝了一個具有特定接口的虛擬程序集,在Android和iOS應用程序中,它安裝了一個具有相同接口的平臺特定程序集,實際上與數據庫進行交互。這個想法是針對PCL的代碼,但是在運行時使用了平臺特定版本的庫。您可以在https://web.archive.org/web/20161209075521/http://log.paulbetts.org/the-bait-and-switch-pcl-trick/

中瞭解關於此模式的更多信息。實際上,此錯誤告訴您,您尚未在特定於平臺的項目中安裝NuGet軟件包。

+0

我再次啓動一個空的proyect,現在可以工作。但thz爲您的答案 – Efeyabel

+0

我有,但仍然得到這個異常:(。此外,該鏈接不再有效。 – Maverick

10

儘管按照錯誤消息中的說明並安裝缺少的庫,但仍然遇到此問題。

乾淨&重建解決它

+0

工作對我來說... –

1

我已經安裝的軟件包(SQLite的淨PCL),但我卸載它們,然後重新安裝。然後我清理解決方案並重建它,現在它可以工作。