https://mp.weixin.qq.com/s/giTPIaB0IIdsyI_mnNyvvw

前言今天给大家分享一个小巧、快速、轻量级的 .NET NoSQL 嵌入式数据库:LiteDB。本篇文章主要是介绍LiteDB和在.NET中如何使用。LiteDB介绍LiteDB 是一个小巧、快速和轻量级的 .NET NoSQL 嵌入式数据库。无服务器的 NoSQL 文档存储简单的 API,类似于 MongoDB100% 的 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表数据项目源码地址更多项目实用功能和特性欢迎前往项目开源地址查看👀,别忘了给项目一个Star支持💖。GitHub源码地址:https://github.com/mbdavid/LiteDB官方文档地址:https://www.litedb.org/api/

文档更新时间: 2025-06-27 09:05   作者:admin