LiteDB在.NET中如何使用
LiteDB介紹
LiteDB是類似於MongoDB的輕量級嵌入式資料庫。因為它是完全使用C#開發,所以整合在C#應用程式中具有先天優勢。和SQLite不同的是,LiteDB是NoSQL資料庫,也就是K/V資料庫,且完全開源、免費。除了可以在桌面應用程式中使用外,它可以在移動、WEB應用中使用。
LiteDB功能特性
- 無伺服器 NoSQL 文件儲存;
- 類似於 MongoDB 的簡潔 API;
- 支援 .NET 4.5 / NETStandard 2.0;
- 執行緒安全;
- LINQ 查詢的支援;
- 具有完整事務支援的 ACID;
- 單檔案儲存,類似於 SQLite;
- 儲存檔案和流資料;
- LiteDB Studio - 資料查詢工具;
- 開源免費
開始使用吧
-
首先在NUGET上安裝LiteDB
-
開始連結
// 新建一個實體類 public class WOW { public string Name { get; set; } public int ID { get; set; } }
開始插入資料庫
using LiteDB; // 開啟資料庫,如果不存在會自動建立。 var db = new LiteDatabase(@"LiteDBtest.db"); // 開啟一個表 和MongoDB一樣的 var wows = db.GetCollection<WOW>("WOW"); // 插入一條 WOW wow = new WOW(); wow.ID = 1; wow.Name = "薩爾"; wows.Insert(wow); // 批次插入 List<WOW> wowlst = new List<WOW>(); for (int i = 1; i < 10; i++) { wow.ID = i + 1; wow.Name = $"這是第{i + 1}次操作"; wowlst.Add(wow); } wows.Insert(wowlst);
這樣單條插入和批次插入就做完了。
資料庫在BIN目錄下面
查詢也是一樣
List<WOW> list = wows.FindAll().ToList(); // 這個是查詢全部
查詢單條也是一樣
WOW wow = wows.FindOne(x => x.Name == "薩爾");
還有刪除
WOW wow = wows.FindOne(x => x.Name == "薩爾"); wows.Delete(wow.ID);
相關文件:
https://dev.listera.top/docs/litedb/