首页 > 数据库 >使用SqlSugar ORM框架在WinForms中连接SQLite数据库

使用SqlSugar ORM框架在WinForms中连接SQLite数据库

时间:2024-11-21 15:56:03浏览次数:1  
标签:SQLite 数据库 WinForms ORM static new public SqlSugar

一,简洁
SqlSugar是一个.NET平台下的ORM框架,它支持多种数据库,包括SQLite。在WinForms应用程序中使用SqlSugar可以简化数据库操作,提高开发效率。本文将指导您如何在WinForms应用程序中使用SqlSugar连接SQLite数据库。

二,环境准备
WinForms项目:在Visual Studio中创建或打开一个WinForms项目。
SQLite数据库:准备一个SQLite数据库文件(.db),或者使用SqlSugar的CodeFirst功能自动创建。
SqlSugar库:通过NuGet包管理器安装SqlSugarCore库。

三,安装SqlSugarCore
在Visual Studio中,打开“工具” -> “NuGet 包管理器” -> “管理解决方案的NuGet程序包”,搜索并安装SqlSugarCore。

四,可以选择新建一个类去写数据库连接字符串,名字随便起,用的时候直接调用这个类就好了,在这个类里写

static string urll = AppDomain.CurrentDomain.BaseDirectory;

public static SqlSugarScope Db = new SqlSugarScope(new ConnectionConfig()
{
ConnectionString = "Data Source=", Data Source后面写你的SQLite数据库的绝对路径 注意路径中的反斜杠需要双写
DbType = DbType.Sqlite,
IsAutoCloseConnection = true,
InitKeyType = InitKeyType.Attribute
});

五,连接完之后可以通过SqlSugar语法
///


/// 插入方法
///

///
///
///
public static async Task Insert(T entity) where T : class, new()
{
return await Db.Insertable(entity).ExecuteCommandAsync();
}

///


/// 批量插入方法
///

///
///
///
public static async Task InsertRange(List entities) where T : class, new()
{
return await Db.Insertable(entities).ExecuteCommandAsync();
}

///


/// 删除方法
///

///
///
///
public static async Task Delete(Expression<Func<T, bool>> whereExpression) where T : class, new()
{
return await Db.Deleteable(whereExpression).ExecuteCommandAsync();
}

///


/// 更新方法
///

///
///
///
public static async Task Update(T entity) where T : class, new()
{
return await Db.Updateable(entity).ExecuteCommandAsync();
}

///


/// 查询方法
///

///
///
public static async Task<List> Query() where T : class, new()
{
return await Db.Queryable().ToListAsync();
}

///


/// 查询方法,根据传入的条件进行查询
///

///
///
public static async Task<List> QueryC(Expression<Func<T, bool>> condition) where T : class, new()
{
var queryable = Db.Queryable();

// 根据传入的条件表达式添加查询条件
if (condition != null)
{
    queryable = queryable.Where(condition);
}

return await queryable.ToListAsync();

}

六,总结
通过上述步骤,您可以在WinForms应用程序中使用SqlSugar ORM框架连接SQLite数据库,并进行CRUD操作。SqlSugar的易用性和强大功能将为您的项目开发带来便利

标签:SQLite,数据库,WinForms,ORM,static,new,public,SqlSugar
From: https://www.cnblogs.com/xiso/p/18560934

相关文章

  • 【C#】【winforms】MVP架构中从 Model 或 View 层主动向 Presenter 传递数据或调用处
    背景使用winforms做上位机软件,软件功能简单来说就是与串口通信。因为一个软件要应用于不同型号的下位机,采用MVP架构提高代码复用性。 其中Model层中实例化SerialPort对象:privateSerialPort_serialPort;只关注串口收发。 presenter层负责主要业务逻辑。view层负责......
  • Windows环境下安装SQLite
    1.下载官网下载Windows环境下载这两个官网下载慢可以用https://download.csdn.net/download/2302_76237327/90020233解压缩到本地文件目录共5个文件2.配置环境变量将本地的这个文件目录添加到path路径win+r,sysdm.cpl高级->环境变量系统变量或者用户变量path编辑新......
  • Transformer
    Transformer一、摘要主要的序列转导模型是基于复杂的循环或卷积神经网络,包括一个编码器和一个解码器。表现最好的模型还通过注意机制连接编码器和解码器。我们提出了一个新的简单的网络架构,变压器,完全基于注意力机制,完全摒弃递归和卷积。在两个机器翻译任务上的实验表明......
  • 深入解析 PyTorch 的 BatchNorm2d:原理与实现
    在深度学习中,BatchNormalization是一种常用的技术,用于加速网络训练并稳定模型收敛。本文将结合一个具体代码实例,详细解析PyTorch中BatchNorm2d的实现原理,同时通过手动计算验证其计算过程,帮助大家更直观地理解BatchNorm的工作机制。1.BatchNormalization的基本原理1.......
  • winform,wpf利用Autoupdater.NET.Official实现自动更新,并且利用Setup project部署(母
    Winform部分新建winform/wpf,我这里创建的是winform,程序名UpdateDemo在NuGet安装必备库Autoupdater.NET.Official,我这里安装的版本是1.9.2在页面上写一个label在Form1的构造函数写入代码AutoUpdater.Start("http://172.30.3.158:80/AutoUpdater.xml");这里填写自己的IPpublic......
  • 23.ORM之多对多查询记录
    1.一(班级表)对多(学生表)查询一个学生的班级id和跨表查询查询一个学生的班级名称2.一(班级表)对多(学生表)查询所有学生名称和跨表查询对应的班级名称3.多(课程表)对多(学生表)从Student表的外键字段courses,跳到Course表中的外键字段teacher,在Teacher表中用`__name`获取课程的对应的老师名......
  • SMARTFORMS函数调用完整示例:打印工厂物料信息
    首先规划想要打印的效果和信息,这里示例的是想要打印物料数据库里面的信息。①对相关数据表创建表结构:SE11 注意数据类型,数量quan需要参考类型:创建表结构:②创建一个REPORT程序,并对相关的字段、变量、内表进行声明,并写一个SELECTION界面和一些基础的取数等,具体代码如下:DATA......
  • 论文HyperEnclave An Open and Cross-platform Trusted Execution Environment学习
    论文原文链接原文都是英文的,先翻译一遍,在翻译的过程中阅读和理解。HyperEnclave:一个开放的跨平台可信执行环境摘要学术界和工业界已经提出了许多可信执行环境(TEEs)。然而,它们中的大多数都需要特定的硬件或固件更改,并且绑定到特定的硬件供应商(如Intel、AMD、ARM和IBM)。在本文中......
  • 基于MindSpore实现Transformer的文本机器翻译
    一、前言相同的一句话,不同的人听的时候侧重点也可能不同。在自然语言处理中,根据任务内容的不同,句子中需要重点关注的部分也会不同,因而引入了注意力机制。注意力机制:判断在执行某个任务时,词在句子中的重要性,并通过注意力分数来表示词的重要程度。分数越高,说明该词对完成该任务......
  • AI大模型探索之路-训练篇13:大语言模型Transformer库-Evaluate组件实践_transformer库
    目录系列篇章......