.NET 开发的NoSQL嵌入式数据库:LiteDB
jopen
10年前
LiteDB 是一个 .NET 开发的小型、快速、轻量级的 NoSQL 嵌入式数据库。
应用场景:
- 桌面/本地应用
- 小型web 应用程序
- 每一个账号/用户一个数据库的数据存储
- 少数并发写入用户操作
特性:
-
无服务器的 NoSQL 文档存储,数据存储在单一文件中
-
简单类似 MongoDB 的 API
-
100% C# 代码,支持 .NET 3.5,单一 DLL,可从 NuGet 安装: Install-Package LiteDB
-
支持 ACID 事务控制
-
日志模式下的写失败恢复
-
可存储 POCO 类或者 BsonDocument
-
支持文件存储和数据流存储 (like GridFS in MongoDB)
-
单一数据文件存储,类似 SQLite
-
文档字段索引,用于快速搜索
-
支持使用 LINQ 查询
-
Shell 命令行 (get on - try this online version
-
开源
使用方法:
// Open data file (or create if not exits) using(var db = new LiteEngine(@"C:\Temp\MyData.db")) { // Get a collection (or create, if not exits) var col = db.GetCollection<Customer>("customers"); var customer = new Customer { Id = 1, Name = "John Doe" }; // Insert new customer document col.Insert(customer); // Update a document inside a collection customer.Name = "Joana Doe"; col.Update(customer); // Index document using a document property col.EnsureIndex(x => x.Name); // Simple Linq support var result = col.Find(x => x.Name.StartsWith("Jo")); }