首页 > 编程语言 >C# LiteDB 初使用

C# LiteDB 初使用

时间:2024-03-26 15:00:52浏览次数:28  
标签:sender C# void EventArgs LiteDB private transls 使用

LiteDB 是一个轻量级的 .NET 数据库,它完全用 C# 编写,不需要安装任何外部依赖或服务器。它非常适合用于嵌入式数据库、桌面应用程序或小型 Web 项目。以下是如何在 C# 中使用 LiteDB 的基本步骤:

安装  LiteDB

通过 NuGet 安装 LiteDB。在 Visual Studio 中,右键点击你的项目 -> 选择“管理 NuGet 程序包” -> 搜索“LiteDB” -> 点击“安装”。

或者,你也可以使用 Package Manager Console 来安装:

Install-Package LiteDB

创建数据库

LiteDB 会在你的应用程序路径下创建一个 .db 文件作为数据库。你可以使用 LiteDatabase 类来连接或创建数据库。使用 GetCollection<T> 方法来获取或创建集合。

 public Form1()
 {
   InitializeComponent();
   lite = new("transldata.db");
   transls = lite.GetCollection<TranslItem>("transls");
 }


 readonly LiteDatabase lite;
 readonly ILiteCollection<TranslItem> transls;

TranslItem 是一个自定义的类,它表示你的数据模型:

  public class TranslItem
  {
    //主键
    [BsonId]
    public int Id { get; set; }
    //文本
    public string? Text { get; set; }
    //翻译
    public string? Trans { get; set; }
  }

查询,插入,更新,删除数据

LiteDB 提供了一系列方法来处理增删查改:

 private void 查看全部_Click(object sender, EventArgs e)
 {
   var all = transls.FindAll();
 }

 private void 查看指定_Click(object sender, EventArgs e)
 {
   var r1 = transls.Find(x => x.Text!.Contains("26"));
 }

 private void 查看指定第一个_Click(object sender, EventArgs e)
 {
   var r1 = transls.FindOne(x => x.Text == "固定");
 }

 private void 插入_Click(object sender, EventArgs e)
 {
   //插入
   var tr = new TranslItem();
   tr.Text = DateTime.Now.ToString();
   tr.Trans = DateTime.Now.TimeOfDay.ToString();
   transls.Insert(tr);
 }

 private void 插入固定_Click(object sender, EventArgs e)
 {
   //插入
   var tr = new TranslItem();
   tr.Text = "固定";
   tr.Trans = "固定Trans";
   transls.Insert(tr);
 }

 private void Commit_Click(object sender, EventArgs e)
 {
   lite.Commit();
 }

 private void 更新_Click(object sender, EventArgs e)
 {
   var r1 = transls.FindOne(x => x.Text == "固定");
   r1.Trans = "44423";
   transls.Update(r1);
 }

 private void 删除全部_Click(object sender, EventArgs e)
 {
   transls.DeleteAll();
 }

 private void 删除指定_Click(object sender, EventArgs e)
 {
   transls.Delete(1);
 }

 private void 删除指定第一个_Click(object sender, EventArgs e)
 {
   var r1 = transls.FindOne(x => x.Text == "固定");
   transls.Delete(r1.Id);
 }

LiteDB 是一个强大且易于使用的嵌入式数据库,非常适合用于各种 C# 项目。通过遵循上述步骤,你可以轻松地在你的 C# 应用程序中使用 LiteDB。

测试项目

LiteDB是一个轻量级的.NET数据库使用示例资源-CSDN文库 

标签:sender,C#,void,EventArgs,LiteDB,private,transls,使用
From: https://blog.csdn.net/fhqiwmc/article/details/137039261

相关文章

  • React-hook-form-mui(一):基本使用
    前言在项目开发中,我们选择了React+MUI作为技术栈。在使用MUI构建form表单时,我们发现并没有与antd类似的表单验证功能,于是我们选择了MUI推荐使用的react-hook-form-mui库去进行验证。但是发现网上关于这个库的使用方法和demo比较少且比较简单,并没有复杂的表单验证的demo。......
  • Vue学习笔记61--mapActions + mapMutations
    原始实现 <template><div><h3>当前求和*10为:{{bigSum}}</h3><h3>当前求和为:{{sum}}</h3><h3>我在:{{school}},学习:{{subject}}</h3><selectv-model.number="selectNo"><option......
  • 前端实现导出table表格为Excel、CSV
    js实现导出table表格为Exceljquery.table2excel.js要基于jquery的基础上才能使用,是一款专门导出excel的插件jquery-3.3.1.js下载http://www.jq22.com/jquery-info122代码如下:<!DOCTYPEhtml><html><head><metacharset="utf-8"><metaname="viewpor......
  • 一次快速使用docker安装mysql8.0记录(配置和数据挂载到指定目录)
    mkdir/home/mysql8vim/home/my.cnf[mysql]#设置mysql客户端默认字符集default-character-set=UTF8MB4[mysqld]port=3307max_connections=200max_connect_errors=10#修改加密方式,因为mysql8.x版本默认的密码加密的方式,Navicat识别不了,需修改为mysql_native_password......
  • 使用 React 和 ECharts 创建地球模拟扩散和飞线效果
    在本博客中,我们将学习如何使用React和ECharts创建一个酷炫的地球模拟扩散效果。我们将使用ECharts作为可视化库,以及React来构建我们的应用。地球贴图在文章的结尾。最终效果准备工作首先,确保你已经安装了React,并创建了一个新的React应用。如果你还没有安装R......
  • ccf-csp-2020-12-2期末预测之最佳阈值(c++满分题解)
    这个题暴力是可以有70分的,下面是暴力代码:(注释写的比较清楚了,也很好理解)#include<iostream>#include<vector>#include<set>#include<algorithm>usingnamespacestd;boolsort1(pair<int,int>vec1,pair<int,int>vec2)//对阈值从小到大排序{ returnvec1.first<=ve......
  • 实验一 CAN总线通讯协议实验
    【实验步骤】1、CAN信号矩阵与CANdbEditor的使用CAN总线实际应用中经常使用通信信号矩阵(Excel表格形式)来描述车辆网络中节点、消息与信号,可以直观地查看CAN网络数据通讯情况,各节点ECU必须遵循该通讯矩阵才能完成信息的交互和共享。(1)CAN网络的基本概念:节点:一个汽车控制器作为......
  • rabbitmq安装使用问题汇总
    附上别的同学的安装教程:win10安装rabbitMQ详细步骤_rabbitmq安装-CSDN博客安装rabbitmq之前是需要先安装erlang环境的,否则的话是无法安装的,还有一点就是安装的版本要对应上,否则也是会存在问题的*重点:rabbitmq安装的时候要选择管理员权限安装,否则可能出现其他问题,后面还是要重......
  • Salesforce宣布将停用Workflow Rules和Process Builder!
    在近期的公告中,Salesforce透露在2025年12月31日之后将不再支持WorkflowRules和ProcessBuilder。Salesforce敦促用户在截止日期前将其自动化流程迁移到FlowBuilder,以确保不间断的支持和漏洞修复。此举正值Salesforce将重点转向更现代、可扩展、低代码的自动化解决方案FlowBui......
  • C# 退出应用程序
    常见的有如下几种退出的方式this.Close关闭当前窗口如果我们操作的对象是Form时可以采用这种方式退出对应的Form,若不是主窗体的话,是无法退出程序的另外若有托管线程(非主线程),也无法干净地退出privatevoidbtnClose_Click(objectsender,EventArgse){this.close();......