LiteDB属于是嵌入式的文档型数据库。有点像关系型数据库里的SQLite。
数据库的使用起来跟MongoDB比较像。区别是,LiteDB不需要部署服务端,像SQLite一样,直接保存在.db文件中。
安装
Install-Package LiteDB
使用示例:
// 创建你的 POCO 类
using LiteDB;
using Newtonsoft.Json;
// 打开数据库 (如果不存在则创建)
using (var db = new LiteDatabase(@"MyData.db"))
{
// 获得 customer 集合
var col = db.GetCollection<Customer>("customers");
// 创建你的新 customer 实例
var customer = new Customer
{
Name = DateTime.UtcNow.ToString(),
Phones = new string[] { "8000-0000", "9000-0000" },
Age = 39,
IsActive = true
};
// 在 Name 字段上创建唯一索引
col.EnsureIndex(x => x.Name, true);
// 插入新的 customer 文档 (Id 是自增的)
col.Insert(customer);
// 更新集合中的一个文档
customer.Name = DateTime.Now.ToString();
col.Update(customer);
// 使用 LINQ 查询文档 (未使用索引)
var results = col.Find(x => x.Age > 20);
Console.WriteLine(JsonConvert.SerializeObject(results, Formatting.Indented));
Console.ReadLine();
}
public class Customer
{
public int Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
public string[] Phones { get; set; }
public bool IsActive { get; set; }
}
相关网址
mbdavidLiteDB LiteDB A .NET NoSQL Document Store in a single data file
https://github.com/mbdavid/LiteDB
LiteDB A .NET embedded NoSQL database
https://www.litedb.org/
LiteDB 一个单数据文件 .NET NoSQL 文档存储 LiteDB
https://dev.listera.top/docs/litedb/