C# Winform使用SqlSugar操作数据库?

科技   2024-10-21 09:03   上海  

在现代软件开发中,操作数据库是常见的需求。WinForms 应用程序作为桌面应用的一种,经常需要与数据库进行交互。SqlSugar 是一个简单而强大的 ORM(对象关系映射)库,它可以让开发者用更少的代码完成数据库操作。本文将介绍如何在 WinForms 应用程序中使用 SqlSugar 来操作数据库。

SqlSugar 简介

SqlSugar 是一款支持 .NET 的 ORM 框架,它支持 Code-First 和 Database-First 开发模式,提供了丰富的 API 来操作数据库,包括增删改查等基本操作,以及复杂查询、事务处理等高级功能。

安装 SqlSugar

在 WinForms 项目中使用 SqlSugar 之前,需要先安装 SqlSugar 的 NuGet 包。可以通过 Visual Studio 的 NuGet 包管理器搜索并安装 SqlSugar

配置数据库连接

使用 SqlSugar 操作数据库之前,需要配置数据库连接。以下是一个配置 SQL Server 数据库连接的示例:

csharp

// 创建 SqlSugarClient 实例
SqlSugarClient db = new SqlSugarClient(new ConnectionConfig()
{
ConnectionString
= "Server=服务器地址;Database=数据库名;Uid=用户名;Pwd=密码;",
DbType
= DbType.SqlServer,
IsAutoCloseConnection
= true,
InitKeyType
= InitKeyType.Attribute
});

基本的 CRUD 操作

创建(Create)

以下是使用 SqlSugar 插入数据的示例:

csharp

var student = new Student() { Name = "张三", Age = 20 };
int id = db.Insertable(student).ExecuteReturnIdentity();

读取(Read)

以下是使用 SqlSugar 查询数据的示例:

csharp

var students = db.Queryable<Student>().ToList();

更新(Update)

以下是使用 SqlSugar 更新数据的示例:

csharp

var student = db.Queryable<Student>().First(it => it.Id == 1);
student
.Age = 21;
db
.Updateable(student).ExecuteCommand();

删除(Delete)

以下是使用 SqlSugar 删除数据的示例:

csharp

db.Deleteable<Student>(it => it.Id == 1).ExecuteCommand();

使用实体类

在 SqlSugar 中,可以通过在实体类上使用属性来定义数据库表的映射关系。以下是一个简单的实体类示例:

csharp

[SugarTable("Student")]
public class Student
{
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
public int Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
}

复杂查询

SqlSugar 支持联表查询、条件查询等复杂操作。以下是一个联表查询的示例:

csharp

var list = db.Queryable<Student, School, (int)(studentId, schoolId) => (student.Id, school.SchoolId))
.Where((student, school) => student.SchoolId == school.Id)
.ToList();

事务处理

SqlSugar 也支持事务处理,以下是一个使用事务的示例:

csharp

db.Ado.UseTran(() =>
{
db
.Insertable(new Student() { Name = "李四", Age = 19 }).ExecuteCommand();
db
.Insertable(new Student() { Name = "王五", Age = 18 }).ExecuteCommand();
throw new Exception("出错了,回滚");
});

结论

SqlSugar 是一个功能强大且易于使用的 ORM 框架,它可以显著提高 WinForms 应用程序开发数据库相关功能的效率。通过简单的配置和代码示例,你可以快速掌握 SqlSugar 的基本用法,并将其应用到你的项目中。

往期精品推荐:

在国内默默无闻的.NET,在国外火的超乎想象?

C#的膨胀之路:创新还是灭亡

介绍.NET 6款好看的winform开源UI库

介绍一款最受欢迎的.NET 开源UI库

WPF第三方开源UI框架:打造独特体验的魔法师

WPF与Winform,你的选择是?

WinForm的前世今生

.NET成年了,然后呢?——编程界的逆袭传奇


CSharp编程大全
C#编程.net core开发,winform桌面开发,wpf开发,c sharp编程大全,CSharp程序开发,C#开发实例(附源代码),编程过程遇到的各种坑详解!
 最新文章