Dapper 快速使用

Dapper 是一个轻量级的 ORM 框架,它通过扩展 IDbConnection 提供了一些有用的扩展方法来查询数据库。以下是 Dapper 的快速使用指南:

1. 安装 Dapper

首先,你需要通过 NuGet 安装 Dapper 包。在你的项目中,可以使用以下命令安装 Dapper:

Install-Package Dapper

2. 连接数据库

创建一个 IDbConnection 接口对象,用于连接数据库。例如,如果你使用的是 SQL Server,可以这样创建连接:

using (IDbConnection db = new SqlConnection(connectionString))
{
    // 你的数据库操作代码
}

3. 执行 CRUD 操作

  • 查询(Query):使用 Query 方法执行查询操作,并将结果映射到强类型的对象列表中。
    var students = db.Query<Student>("SELECT * FROM Students").ToList();
    
  • 插入(Insert):使用 Execute 方法执行插入操作。
    var result = db.Execute("INSERT INTO Students (Name, Age) VALUES (@Name, @Age)", new { Name = "John", Age = 22 });
    
  • 更新(Update):使用 Execute 方法执行更新操作。
    var result = db.Execute("UPDATE Students SET Name = @Name, Age = @Age WHERE Id = @Id", new { Name = "John", Age = 23, Id = 1 });
    
  • 删除(Delete):使用 Execute 方法执行删除操作。
    var result = db.Execute("DELETE FROM Students WHERE Id = @Id", new { Id = 1 });
    

4. 存储过程

Dapper 可以轻松调用存储过程:

var result = db.Query<Student>("GetStudentById", new { Id = 1 }, commandType: CommandType.StoredProcedure).FirstOrDefault();

5. 高级功能

  • 多映射(Multi-Mapping):Dapper 支持多表查询并将结果映射到多个对象。
    var students = db.Query<Student, Class, Student>(sql, (student, @class) => {
        student.Class = @class;
        return student;
    }, splitOn: "Id").Distinct().ToList();
    
  • 参数化查询:Dapper 支持参数化查询,有效防止 SQL 注入。
    var students = db.Query<Student>("SELECT * FROM Students WHERE Age > @Age", new { Age = 20 }).ToList();
    
  • 事务处理:Dapper 支持数据库事务,确保数据操作的一致性。

6. 总结

Dapper 以其高性能、简单易用和灵活性而著称。它适合于需要高效数据访问的应用场景,尤其是在已有数据库项目中快速集成和使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

听我俩天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值