1.环境

MySql:5.7.20

Dapper:1.50.2

.Net:4.5

2.遇到的问题

在开发中我发现,使用Dapper查询数据时,第一次查询正确,第二次查询就差不出来,或者直接修改数据库后也查不出来相关的数据。

3.找到问题所在

后来经过各种排查,怀疑过mysql,数据库连接,Dapper 等各种问题,但是后来我自己写了个demo发现又可以正常查询,当时我就陷入了困局。后来还是逐句排查代码,发现只要调用了QueryFirstOrDefault就会导致查询异常,后来把QueryFirstOrDefault换成了Query解决问题。这个想法后来在写的demo中加入QueryFirstOrDefault也验证了这个猜测,只要调用了,那么后面的查询就会有问题

4.陷入深深的思考

虽然是解决了问题,但是问题产生了原因还没弄明白,至此,我决定下载Dapper源代码看看咋回事,下载发现只能用vs2017打开,我的2015打不开,暂时就没去深究了,等会去看看能不能上报bug。如果有知道的请解个疑,谢谢

关于Mysql下使用Dapper QueryFirstOrDefault的问题的更多相关文章

  1. .Net Framework下对Dapper二次封装迁移到.Net Core2.0遇到的问题以及对Dapper的封装介绍

    今天成功把.Net Framework下使用Dapper进行封装的ORM成功迁移到.Net Core 2.0上,在迁移的过程中也遇到一些很有意思的问题,值得和大家分享一下.下面我会还原迁移的每一个过程 ...

  2. .Net Core2.0下使用Dapper遇到的问题

    今天成功把.Net Framework下使用Dapper进行封装的ORM成功迁移到.Net Core 2.0上,在迁移的过程中也遇到一些很有意思的问题,值得和大家分享一下.下面我会还原迁移的每一个过程 ...

  3. Net Core2.0下使用Dapper

    Net Core2.0下使用Dapper 今天成功把.Net Framework下使用Dapper进行封装的ORM成功迁移到.Net Core 2.0上,在迁移的过程中也遇到一些很有意思的问题,值得和 ...

  4. mysql下sql语句 update 字段=字段+字符串

    mysql下sql语句 update 字段=字段+字符串   mysql下sql语句令某字段值等于原值加上一个字符串 update 表明 SET 字段= 'feifei' || 字段; (postgr ...

  5. Mysql下在某一列后即表的某一位置添加新列的sql语句

    Mysql简介 MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司.MySQL被广泛地应用在Internet上的中小型网站中.由于其体积小.速度快.总体拥有成本低,尤 ...

  6. mysql下的SELECT INTO语句

    在mysql下使用SELECT INTO语句会产生ERROR 1327 (42000): Undeclared variable:new_tablename 此时要使用: CREATE TABLE C ...

  7. MySQL下创建数据库以及授权用户

    一.新建数据库 1.首先登录MySQL:(输入 mysql -u root -p 命令,然后输入密码按回车即可) 2.在mysql> 下输入如下命令,回车,即可创建数据库 (test为数据库名) ...

  8. mysql下批量清空某个库下的所有表(库不要删除,保留空库)

    总所周知,mysql下要想删除某个库下的某张表,只需要切换到该库下,执行语句"drop table tablename"即可删除!但若是该库下有成百上千张表,要是再这样一次次执行d ...

  9. 如何在MYSQL下所有指定数据库名下执行SQL

    mysql下用户库比较多,都有统一的命名格式,希望在这些所有用户库执行脚本,更新数据,或者查询数据 可以采用以下存储过程实现 DROP PROCEDURE IF EXISTS `sp_execalld ...

随机推荐

  1. Azkaban安装部署

    在root的用户下搭建的 • Azkaban安装部署(可参照:http://azkaban.github.io/azkaban/docs/latest/) 1):前提 安装JDK,安装Hadoop,H ...

  2. 解决网络不可用--Using_Service_Workers

    Using_Service_Workers:https://developer.mozilla.org/zh-CN/docs/Web/API/Service_Worker_API/Using_Serv ...

  3. canvas绘制旋转图形

    将绘制到canvas上的要素进行旋转: 1.绘制时,通过操作画布的坐标轴状态:平移画布原点,旋转坐标轴等,达到旋转图形的目的 2.操作操作DOM元素,直接旋转canvas画布 操作画布的坐标轴状态: ...

  4. progress 相关事件 异步 ajax

    loadstart — Fires when the fi rst byte of the response has been received.progress — Fires repeatedly ...

  5. 【WEB API项目实战干货系列】- WEB API入门(一)

    这篇做为这个系列的第一篇,做基本的介绍,有经验的人可以直接跳到第二部分创建 ProductController.   创建 Web API 项目 在这里我们使用VS2013, .NET 4.5.1创建 ...

  6. stm32l053r8 nucelo板的串口实验

    stm32cubel0的HAL驱动实例中,基于stm32l53R8  nucelo板的官方串口通讯例程,是使用USART1实现在两块stm32l053r8 nucelo板间通讯.而在实际中,笔者手中只 ...

  7. C#获取指定月指定周的日期范围

    );        MessageBox.Show(end.ToShortDateString());

  8. 从cdn说起

    为什么要使用cdn 雅虎军规有一条规则建议我们是用cdn.随便在网上搜索,可以找到使用的cdn的好处. 再次强调第一条黄金定律,减少网页内容的下载时间.提高下载速度还可以通过CDN(内容分发网络)来提 ...

  9. Python网络编程篇之socketserver

    1.socketserver模块和类 socketserver是标准库中的一个高级模块,目标是简化很多样板代码(创建网络客户端和服务器所必须的代码) 这个模块封装了socket编程所需要的各种各样的类 ...

  10. MyBatis《2》

    MyBatis入参考文档:http://mybatis.org/mybatis-3/zh/   1.properties 属性 1.在MyBatis配置文件中引用属性文件     MyBatis允许在 ...