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


425

被折叠的 条评论
为什么被折叠?



