LiteDB 是一个 .NET 开发的小型快速轻量级的 NoSQL 嵌入式数据库
- 无服务器NoSQL文档存储
- 简单的API,类似于MongoDB
- 单个DLL(小于450kb)中的.NET 4.5/NETStandard 1.3/2.0的100%C#代码
- 线程安全
- 具有完整交易支持的ACID
- 写入失败后的数据恢复(WAL日志文件)
- 使用DES(AES)加密的数据文件加密
- 将POCO类BsonDocument映射为使用属性或流利的映射器API
- 存储文件和流数据(例如MongoDB中的GridFS)
- 单个数据文件存储(如SQLite)
- 索引文档字段以快速搜索
- LINQ查询支持
- 类似SQL的命令来访问/转换数据
- LiteDB Studio-用于数据访问的漂亮UI
开源,所有人免费-包括商业用途
官网地址:http://www.litedb.org/
可视化工具:https://github.com/mbdavid/LiteDB.Studio
使用教程
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace UsbDemo
{
public class LiteDbDemo
{
public void Test()
{
using (var db = new LiteDB.LiteDatabase("MyData.db"))
{
//新增/创建集合
var col = db.GetCollection<LiteDbModel>("LiteDbModel");
//插入数据
var customer = new LiteDbModel { Id = 1, Name = "John Doe", Sex = "男" };
col.Insert(customer);
//更新数据
customer.Name = "Joana Doe1";
col.Update(customer);
//删除数据
col.DeleteMany(x=>x.Name== "Joana Doe1");
//根据id删除数据
col.Delete(1);
//删除全部
col.DeleteAll();
// 查询单条
var sing = col.FindOne(x => x.Name== "Joana Doe1");
//查询全部
var all = col.FindAll();
//lambda表达式查询
var lambda = col.Find(x=>x.Name.Contains("Joana"));
}
}
}
public class LiteDbModel
{
//Id字段必须
public int Id { get; set; }
public string Name { get; set; }
public string Sex { get; set; }
}
}
评论 (0)