LiteDB在.NET中如何使用


LiteDB在.NET中如何使用

LiteDB介绍

LiteDB是类似于MongoDB的轻量级嵌入式数据库。因为它是完全使用C#开发,所以集成在C#应用程序中具有先天优势。和SQLite不同的是,LiteDB是NoSQL数据库,也就是K/V数据库,且完全开源、免费。除了可以在桌面应用程序中使用外,它可以在移动、WEB应用中使用。

LiteDB功能特性

  • 无服务器 NoSQL 文档存储;
  • 类似于 MongoDB 的简洁 API;
  • 支持 .NET 4.5 / NETStandard 2.0;
  • 线程安全;
  • LINQ 查询的支持;
  • 具有完整事务支持的 ACID;
  • 单文件存储,类似于 SQLite;
  • 存储文件和流数据;
  • LiteDB Studio - 数据查询工具;
  • 开源免费

开始使用吧

  1. 首先在NUGET上安装LiteDB

  2. 开始链接

    // 新建一个实体类
    public class WOW
    {
        public string Name { get; set; }
        public int ID { get; set; }
    }
    

    开始插入数据库

    using LiteDB;
    // 打开数据库,如果不存在会自动创建。
    var db = new LiteDatabase(@"LiteDBtest.db");
    // 打开一个表 和MongoDB一样的
    var wows = db.GetCollection<WOW>("WOW");
    // 插入一条
    WOW wow = new WOW();
    wow.ID = 1;
    wow.Name = "萨尔";
    wows.Insert(wow);
    
    // 批量插入
    List<WOW> wowlst = new List<WOW>();
    for (int i = 1; i < 10; i++)
    {
        wow.ID = i + 1;
        wow.Name = $"这是第{i + 1}次操作";
        wowlst.Add(wow);
    }
    wows.Insert(wowlst);
    

    这样单条插入和批量插入就做完了。

    数据库在BIN目录下面

    查询也是一样

    List<WOW> list = wows.FindAll().ToList(); // 这个是查询全部
    

    查询单条也是一样

    WOW wow = wows.FindOne(x => x.Name == "萨尔");
    

    还有删除

    WOW wow = wows.FindOne(x => x.Name == "萨尔");
    wows.Delete(wow.ID);
    

相关文档:
https://dev.listera.top/docs/litedb/

posted @ 2024-11-11 09:13  梦想航路  阅读(56)  评论(0编辑  收藏  举报