.NET 开发的NoSQL嵌入式数据库:LiteDB

jopen 9年前

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"));  }

项目主页:http://www.open-open.com/lib/view/home/1422233004629