簡體   English   中英

Xamarin.Forms 中的 SQLite-Net-Pcl

[英]SQLite-Net-Pcl in Xamarin.Forms

我正在嘗試從 Xamarin.Forms 學習 SQLite 及其用法。 我發現推薦安裝 Sqlite-net-pcl 為 NuGet package 並使用它來創建、打開、修改數據庫。 到那時一切都很好。 但是,我很難在 web 上找到有關 Sqlite-net-pcl 的更多詳細信息。 看來,該庫沒有全面的文檔。 這個現實讓我想到了一些問題,我相信我可以從 Stackoverflow 的前輩那里得到答案:

1-如果沒有您嘗試使用的庫的文檔,那么快速學習它的最佳方法是什么? 試錯? 在這種情況下,我認為需要完整的 class 層次結構。 2-據我了解,Sqlite-net-pcl 是 Sqlite 的部分實現。 例如,在 Sqlite 的文檔中,說支持外鍵,但應該啟用。 但是,當我使用 VisualStudio 的 ObjectBrowser 工具時,我在 Sqlite-net-Pcl 中找不到這個屬性。
3-考慮到,SQLite 有更好的支持,如果我想直接在 xamarin.forms(c#) 中使用 SQLite 而不是其派生版本(Sqlite-net-pcl),我該如何實現?

最好使用 SQLite-net 庫。 它們只是 SQLite 流的包裝。 你有你需要的一切。 此外,如果您想使用 ORM,您還可以通過Microsoft.EntityFrameworkCore.Sqlite使用 EntityFrameworkCore

就像GitHub 存儲庫中所說的那樣:

SQLite-net 是一個開源的最小庫,允許 .NET、.NET Core 和 Mono 應用程序將數據存儲在 Z497757A9C5B2EC178ED8 數據庫中。 It was first designed to work with Xamarin.iOS, but has since grown up to work on all the platforms (Xamarin.*, .NET, UWP, Azure, etc.).

關於外鍵 - 沒有任何限制。 您可以自由使用它而無需任何“啟用”。

There are some other options like Microsoft.Data.SQLite & System.Data.SQLite , but I haven't tried them with Xamarin and, if they work, I don't think that they will have better support for Mono, like the one您使用 SQLite-net 所擁有的。 后者也在不斷更新。

是微軟關於使用 sqlite-net-pcl 的官方教程

如果您想使用 ORM,您可以按照官方文檔中的這篇文章了解如何設置 SQLite 庫,以及 EFCore 包、遷移等。

如果您選擇使用 EFCore,請考慮遷移限制

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM