LiteDB 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
LiteDB 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票

软件简介

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
  • 开源,所有人免费-包括商业用途
  • 从NuGet安装: Install-Package LiteDB

使用方法:

// 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"));
}
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (7)

加载中
唉,我想用,可惜没什么人用,网上完全没有相关的资料什么的……全部都是sqlite LiteDB
2015/01/29 08:58
回复
举报
不错,不知道性能怎么样,作为本地缓存用,足够了 LiteDB
2015/01/29 11:59
回复
举报
还是实干第一,我前几年也像实现一个一样目标的东西,但是后来设计的太复杂,又没时间,就一直扔在那里了,现在居然有好同学做出来了,真是好啊~ 想问下是国内的吗?能一起参与开发吗? LiteDB
2015/01/29 13:59
回复
举报
性能怎么样,和SQLITE比较如何 LiteDB
2015/01/29 14:14
回复
举报
像LiteDB 这样的数据库,适合游戏里面读写玩家数据么? LiteDB
2015/01/29 18:50
回复
举报
能用到Windows Phone上吗? LiteDB
2015/01/29 22:03
回复
举报
这真是个好东西。 LiteDB
2015/01/29 22:57
回复
举报
更多评论
暂无内容
发表于数据库专区
04/02 18:13

C#里的轻量级数据库LiteDB

近期在找一个方便好用的serverless数据库,工作中有很多场景能用上,前一个项目用了SQLite发现不用给客户安装数据库真舒服。 应用场景特点主要包括: 安装量大 数据量小(10万左右的记录没啥影响?没仔细测试过)...

0
0
发表了博客
2018/03/11 11:10

Xamarin.Forms中使用LiteDB分页

Xamarin.Forms中使用LiteDB分页 在移动应用的开发中,为力提高用户体验,一般都会在本地设计一套数据缓存。这里我使用的是LiteDB来缓存数据。 LiteDB是.Net平台的一个开源的NoSQL文件数据库, 开源库地址:https://github.com/mbdavid/LiteDB。 NuGet地址:https://www.nuget.org/packages/LiteDB/。 对于分页,首先我们...

0
0
发表了博客
01/20 14:37

【UWP】使用 LiteDB 存储数据

序言: 在 UWP 中,常见的存储数据方式基本上就两种。第一种方案是 UWP 框架提供的 ApplicationData Settings 这一系列的方法,适用于存放比较轻量的数据,例如存个 Boolean 类型的设置项这种是最适合不过的了。另一种方案是用 Sqlite 这种数据库,适合存放数据量大或者结构复杂,又或者需要根据条件查询的场合,例如开发...

0
0
发表了博客
2019/04/10 10:10

LiteDB源码解析系列(2)数据库页详解

在这一篇里,我将用图文的方式展示LiteDB中页的结构及作用,内容都是原创,在描述的过程中有不准确的地方烦请指出。 1.LiteDB页的技术工作原理 LiteDB虽然是单个文件类型的数据库,但是数据库有很多信息,例如索引,集合,文件等。为了管理这些信息,LiteDB实现了数据库页的概念。页是一个拥有4096 字节的 存储相同信息的...

0
0
发表了博客
2019/06/26 19:39

LiteDB源码解析系列(4)跳表基本原理

LitDB里面索引的数据结构是用跳表来实现的,我知道的开源项目中使用跳表的还包括Redis,大家可以上网搜索关于Redis的跳表功能的实现。在这一章,我将结合LiteDB中的示例来讲解跳表。 1.跳表与其他数据结构对比 我们经常能够听说B树,红黑树,AVL树,Splay Tree, Treep,但是让我们打开编辑器自己去实现,可能要考虑好很多...

0
0
发表了博客
2019/06/19 18:59

LiteDB源码解析系列(3)索引原理详解

在这一章,我们将了解LiteDB里面几个基本数据结构包括索引结构和数据块结构,我也会试着说明前辈数据之巅在博客中遇到的问题,最后对比mysql进一步深入了解LiteDB的索引原理。 1.LiteDB的五种基本数据结构 在LiteDB的Structures中定义了五个基本数据结构,分别为PageAddress、CollectionIndex、DataBlock、IndexNode和I...

0
0
发表了博客
2016/10/20 10:14

在正式项目中使用 LiteDB

LiteDB 是一个 NoSQL 数据库,特点是 MongoDB like 和 0 配置。100% 原汁原味的 C# 开发, Release 只有一个 DLL,官方有一下适用场景:移动App,桌面小应用程序,特有的文件格式,小型的 Web 应用,需要为每一个用户建立数据库的应用。最重要的是它支持事务和LinQ和日志,对于商业应用也是免费的。blablabla......

0
0
发表于数据库专区
2016/04/03 23:30

小巧轻量级NoSQL文件数据库LiteDB

1.LiteDB初步介绍 2.LiteDB使用基本案例 3.LiteDB的技术细节 4.资源其他 今天给大家介绍一个不错的小巧轻量级的NoSQL文件数据库LiteDB。本博客在2013年也介绍过2款.NET平台的开源数据库: 1.【原创】开源.NET下的XML数据库介绍及入门 2.【原创】C#开源轻量级对象数据库NDatabase介绍 上面2个数据库我的实际的项目中用过,...

0
0
发表于数据库专区
2016/04/03 23:37

关于NoSQL数据库LiteDB的分页查询解决过程

1.关于数据库排序与分页 2.LiteDB的查询排序 3.LiteDB分页之渐入佳境 4.LiteDB的疑问 5.资源   在文章:这些.NET开源项目你知道吗?让.NET开源来得更加猛烈些吧!(第二辑) 与 .NET平台开源项目速览(3)小巧轻量级NoSQL文件数据库LiteDB中,介绍了LiteDB的基本使用情况以及部分技术细节,我还没有在实际系统中大量使用,...

0
0
发表了博客
2018/09/04 11:01

.NET和F#周报第35周-.NET 8月重大更新

来看看8月份最后一个周F#和.NET最新相关信息. https://www.yuque.com/rock/fsharp-weekly/35 这次我们多聊聊.NET相关的东西, 看看.NET的健康生态. 新闻 随着Core的稳定发布,.NET Standard 2.1也更新发布, WebShar...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了问答
2015/06/18 11:18

使用LiteDB的项目发布到服务器上(iis6)就报错了

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.NullReferenceException: Object reference not set to an instance of an obj...

2
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
7 评论
229 收藏
分享
返回顶部
顶部