.NET NoSQL 嵌入式数据库 LiteDB 使用教程
【摘要】 前言今天大姚给大家分享一个小巧、快速、轻量级的.NET 开源且免费(MIT License)的 NoSQL 嵌入式数据库:LiteDB。本篇文章我们主要来讲讲LiteDB在.NET中如何使用。LiteDB介绍LiteDB 是一个小巧、快速和轻量级的 .NET NoSQL 嵌入式数据库。无服务器的 NoSQL 文档存储简单的 API,类似于 MongoDB100% 的 C# 代码支持 .NET...
前言
今天大姚给大家分享一个小巧、快速、轻量级的.NET 开源且免费(MIT License)的 NoSQL 嵌入式数据库:LiteDB。本篇文章我们主要来讲讲LiteDB在.NET中如何使用。
LiteDB介绍
LiteDB 是一个小巧、快速和轻量级的 .NET NoSQL 嵌入式数据库。
-
无服务器的 NoSQL 文档存储 -
简单的 API,类似于 MongoDB -
100% 的 C# 代码支持 .NET 4.5 / NETStandard 1.3/2.0,以单个 DLL(不到 450KB)形式提供 -
线程安全 -
支持 ACID,完整的事务支持 -
写入失败后的数据恢复(WAL 日志文件) -
使用 DES(AES)加密算法对数据文件进行加密 -
使用属性或流畅的映射器 API 将 POCO 类映射为 BsonDocument -
存储文件和流数据(类似于 MongoDB 的 GridFS) -
单一数据文件存储(类似于 SQLite) -
对文档字段建立索引以实现快速搜索 -
支持 LINQ 查询 -
提供类似于 SQL 的命令来访问/转换数据 -
LiteDB Studio - 数据访问的精美用户界面 -
开源且免费供所有人使用,包括商业用途
LiteDB应用场景
可以在以下场景中使用 LiteDB:
-
桌面/本地小型应用程序 -
应用程序文件格式 -
小型网站/应用程序 -
每个账户/用户数据存储一个数据库的情况
LiteDB项目源代码
创建一个LiteDBCwTest控制台
安装LiteDB包
搜索LiteDB
包,点击安装。
定义Customer数据模型
public class Customer
{
/// <summary>
/// Id
/// </summary>
public int Id { get; set; }
/// <summary>
/// Name
/// </summary>
public string Name { get; set; }
/// <summary>
/// Age
/// </summary>
public int Age { get; set; }
/// <summary>
/// Email
/// </summary>
public string Email { get; set; }
}
LiteDB数据创建、插入、查询和删除
namespace LiteDBCwTest
{
internal class Program
{
static void Main(string[] args)
{
//创建或打开数据库文件
using (var db = new LiteDatabase(@"MyCustomerData.db"))
{
// 获取集合(相当于表)
var collection = db.GetCollection<Customer>("customers");
var customers = new List<Customer>()
{
new Customer
{
Name = "追逐时光者",
Age = 18,
Email = "17854545@gmail.com"
},
new Customer
{
Name = "大姚",
Age = 30,
Email = "16556545@gmail.com"
}
};
// 批量插入数据
collection.Insert(customers);
// 查询数据
var result = collection.FindAll();
foreach (var c in result)
{
Console.WriteLine($"Name: {c.Name}, Age: {c.Age}, Email: {c.Email}");
}
// 根据条件查询数据
var query = Query.EQ("Age", 30);
var resultByAge = collection.Find(query);
foreach (var c in resultByAge)
{
Console.WriteLine($"Name: {c.Name}, Age: {c.Age}, Email: {c.Email}");
}
// 删除数据
var deletedResult = collection.Delete(resultByAge.FirstOrDefault().Id);
}
}
}
}
创建成功的数据库文件
LiteDB.Studio管理工具下载
-
https://github.com/mbdavid/LiteDB.Studio/releases
用于查看和编辑 LiteDB v5 文档的图形用户界面工具。
LiteDB.Studio管理数据
连接MyCustomerData数据库
查看customers表数据
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)