国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

C#開發(fā)的輕量級LiteDB數(shù)據(jù)庫

2023-08-04 08:35 作者:HwLib  | 我要投稿

LiteDB簡介

? ? ? ? 小型數(shù)據(jù)庫我一直使用SQLite。因為它是C語言開發(fā),所以在C#中使用略顯繁瑣。LiteDB是類似于MongoDB的輕量級嵌入式數(shù)據(jù)庫。因為它是完全使用C#開發(fā),所以集成在C#應(yīng)用程序中具有先天優(yōu)勢。和SQLite不同的是,LiteDB是NoSQL數(shù)據(jù)庫,也就是K/V數(shù)據(jù)庫,且完全開源、免費。除了可以在桌面應(yīng)用程序中使用外,它可以在移動、WEB應(yīng)用中使用。

LiteDB功能特性

  • 無服務(wù)器 NoSQL 文檔存儲;

  • 類似于 MongoDB 的簡潔 API;

  • 支持 .NET 4.5 / NETStandard 2.0;

  • 線程安全;

  • LINQ?查詢的支持;

  • 具有完整事務(wù)支持的 ACID;

  • 單文件存儲,類似于 SQLite;

  • 存儲文件和流數(shù)據(jù);

  • LiteDB Studio -?數(shù)據(jù)查詢工具;

  • 開源免費

? ? ? ? 從功能特性來看,LiteDB還是很強的,尤其難得的是支持并發(fā),這點連SQLite也不具備。但是LiteDB歷史較短,其穩(wěn)定性和可靠性還需要進(jìn)一步提升。下圖是我從網(wǎng)上找的LiteDB和SQLite性能測試對比。此圖中的數(shù)據(jù)我本人沒有實際驗證過,僅供大家參考。

圖1 LiteDB和SQLite性能對比

使用入門

? ? ? ? 首先通過NuGet安裝最新的穩(wěn)定版LiteDB。

圖2 安裝LiteDB

? ? ? ? 然后新建一個實體類。網(wǎng)上的文章連范例都懶的做,千篇一律照抄官方的Customer類。我們當(dāng)然不能這么干。這里我創(chuàng)建了一個上位機開發(fā)中用于記錄操作事件的EventModel類。

? ? ? ? 在窗體上添加三個按鈕,分別用于插入、修改和刪除數(shù)據(jù)。在插入按鈕的點擊事件中輸入下面代碼。

? ? ? ? 上面的代碼模擬了一次性插入10次操作的記錄數(shù)據(jù)。我們可以通過DataGridView控件可以查看數(shù)據(jù)庫中的數(shù)據(jù)。

圖3 插入10個操作記錄

? ? ? ? 另外LiteDB還提供了一個名為LiteDB Studio的可視化工具。我們也可以借助它查詢、操作數(shù)據(jù)。

圖4 LiteDB Studio

? ? ? ? 雙擊修改按鈕,在其點擊事件中輸入下面代碼。

? ? ? ? 上面的代碼先查找操作事件是"這是第4次操作"的記錄,然后再將其修改為"這是第14次操作"。數(shù)據(jù)的刪除也很簡單。雙擊刪除按鈕,在其點擊事件中輸入下面代碼。

? ? ? ? 上面的代碼刪除了事件內(nèi)容為"這是第3次操作"的記錄。執(zhí)行后的數(shù)據(jù)如下。

圖5 刪除記錄

? ? ? ? 通過簡單的增、刪、查、改我們得以初步了解LiteDB的使用。它確實夠輕量、夠簡單。是小型應(yīng)用程序的一個不錯的選擇。

C#開發(fā)的輕量級LiteDB數(shù)據(jù)庫的評論 (共 條)

分享到微博請遵守國家法律
大安市| 徐水县| 元氏县| 嵩明县| 乌拉特中旗| 泸州市| 恩平市| 贵州省| 台中市| 稷山县| 甘南县| 海门市| 七台河市| 瑞安市| 汶上县| 商河县| 商城县| 竹山县| 大悟县| 长垣县| 龙南县| 周宁县| 锡林浩特市| 大安市| 永春县| 牙克石市| 普宁市| 邹城市| 文水县| 阿克苏市| 林周县| 浠水县| 普陀区| 太保市| 杭州市| 东光县| 山阳县| 砀山县| 房产| 丹寨县| 浙江省|