架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 45832|回复: 15

[资料] ORM 框架 Dapper 简单使用

[复制链接]
发表于 2020-12-29 11:58:20 | 显示全部楼层 |阅读模式
尽管我非常讨厌写 sql 语句,但是,有时候又不得不使用  Dapper 对数据库进行一些简单的操作,总比,我封装个 dbhelper 好用一些吧。

Dapper 判断数据是否存在

Dapper 执行更新操作



Dapper 将查询结果放到 DataTable

Dapper 插入操作

例如:

Dapper 查询操作







上一篇:SQL Server 性能优化之索引碎片
下一篇:SQL Server 使用逗号分隔字符串
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2021-1-27 10:23:38 | 显示全部楼层
dapper 实现乐观锁

数据库表增加 RowVersion 字段,类型为 timestamp,原理:在更新的时候,将 RowVersion  作为 where 条件,如下图:

QQ截图20210127102020.jpg

代码如下:





码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2021-12-10 14:37:28 | 显示全部楼层
dapper 动态传递参数

dapper 执行命令动态传递参数的时候,我开始向通过 json 字符串反序列化成 object 当作参数传递,会报错如下:

The output error:An enumerable sequence of parameters (arrays, lists, etc) is not allowed in this context.

可以使用如下方式传递动态参数:



码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2021-7-14 15:09:24 | 显示全部楼层
使用Dapper返回多个结果集




注意:Read获取的时候必须是按照上面返回表的顺序 比如上面先查询的Users表,那么Read的时候必须先返回Users表,否则返回没有数据
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2021-1-27 16:59:36 | 显示全部楼层
dapper  select count(*)

获取数据总条数,代码如下:



码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2021-1-28 13:10:05 | 显示全部楼层
dapper like 模糊查询



码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2021-3-26 14:46:40 | 显示全部楼层
dapper in 更新

码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2021-12-27 22:10:02 | 显示全部楼层
微软推出 Microsoft.Data.SqlClient,替代 System.Data.SqlClient
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2021-12-28 14:26:29 | 显示全部楼层
正在使用,学习一下
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2022-1-17 17:33:51 | 显示全部楼层
之前在上一家公司我把公司的数据层 全部换成 dapper了。感觉非常不错 因为在之前 是用ado.net 的 公司的几乎所有同事 都敲过sql 语句,转到这之后 很顺畅。。
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-4-27 01:51

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表