Dapper 是基于 ADO.NET 的轻量级 ORM,提供 LINQ 风格 SQL 查询与自动对象映射,不替代 ADO.NET 而是封装其连接与执行能力,支持单对象查询、多结果集、增删改及事务管理,强调手写 SQL、类型安全与连接可控。

Dapper 是一个极简、高性能的 .NET 对象关系映射(ORM)库,它不替代 ADO.NET,而是在其之上提供一层轻量封装,让你用 LINQ 风格写 SQL 查询,同时几乎不损失原生 ADO.NET 的性能。 它不是全自动 ORM(比如 EF Core 那样能自动生成表、跟踪变更),而是“你掌控 SQL,它帮你映射”,所以快、可控、无魔法。
安装与基础配置
在项目中通过 NuGet 安装 Dapper:
- 打开包管理器控制台,运行:Install-Package Dapper
- 确保已引用 System.Data 和对应数据库驱动(如 Microsoft.Data.SqlClient for SQL Server)
- Dapper 是扩展方法库,所有功能都挂在 IDbConnection 上,所以你得先有打开的连接
最简查询:单对象映射
假设你有数据库表 Users(Id, Name, Email) 和对应类:
public class User { public int Id { get; set; } public string Name { get; set; } public string Email { get; set; } }登录后复制
查询单个用户只需三步:
- 创建并打开数据库连接(推荐用 using 确保释放)
- 调用 QueryFirstOrDefault
执行带参数的 SQL - Dapper 自动按属性名匹配列名(大小写不敏感)
示例代码:
using (var conn = new SqlConnection(connectionString))<br>{<br> conn.Open();<br> var user = conn.QueryFirstOrDefault<User>("SELECT * FROM Users WHERE Id = @id", new { id = 1 });<br> // user 就是映射好的对象<br>}登录后复制
批量操作与多结果集
Dapper 支持一次执行多个 SQL 并返回不同类型的多个结果集,用 QueryMultiple:
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~