在使用Dapper.NET时,由于生成的实体的属性与数据库表字段不同(如表字段叫USER_NAME,生成的对应的实体属性则为UserName)。

这时需要使用Dapper中的CustomPropertyTypeMap和SqlMapper.SetTypeMap(XX)进行设置。但这样设置后与Dapper.FastCRUD冲突,导致Dapper.FastCRUD无法读取数据。

原因就是Dapper.FastCRUD在生成SQL语句时,使用了类似USER_NAME AS UserName这样的写法导致。这样就是SqlMapper.SetTypeMap(XX)映射字段不同。

解决方案:

找到Dapper.FastCRUD源代码:X:\github\Dapper.FastCRUD\Dapper.FastCRUD\SqlBuilders\StatementSqlBuilder.cs中约161行的函数,添加如下粉红色代码一行,如下:

[MethodImpl(MethodImplOptions.AggressiveInlining)]
        public string GetColumnName(PropertyMapping propMapping, string tableAlias, bool performColumnAliasNormalization)
        {
            performColumnAliasNormalization = false;//add by SunYJ@20160412
            var sqlTableAlias = tableAlias == null ? string.Empty : $"{this.GetDelimitedIdentifier(tableAlias)}.";
            var sqlColumnAlias = (performColumnAliasNormalization && propMapping.DatabaseColumnName != propMapping.PropertyName)
                                     ? $" AS {this.GetDelimitedIdentifier(propMapping.PropertyName)}"
                                     : string.Empty;
            return $"{sqlTableAlias}{this.GetDelimitedIdentifier(propMapping.DatabaseColumnName)}{sqlColumnAlias}".ToString(CultureInfo.InvariantCulture);
        }

最新文章

  1. 外接程序“VMDebugger”未能加载或者导致了异常。是否希望移除该外接程序?
  2. CentOS6.6安装vmware workstation报错
  3. UNITY 状态机 + SVN + 码云 下篇
  4. Python自动化之paramiko
  5. git总是出现untracked content怎么解决?
  6. 自学asp.net mvc(三)
  7. C# 6与VB 12即将加入模式匹配
  8. VS2008+ffmpeg SDK3.2调试tutorial01
  9. 如何将DataTable转换成List<T>呢?
  10. WCF如何在浏览器访问
  11. poj 1664 put apples(dfs)
  12. 【外文翻译】 为什么我要写 getters 和setters
  13. pl/sql中if的用法
  14. 【Elasticsearch全文搜索引擎实战】之集群搭建及配置
  15. day10函数,函数的使用,函数的分类,函数的返回值
  16. MySQL存储过程 游标
  17. JS Object.defineProperties()方法
  18. LwIP Application Developers Manual12---Configuring lwIP
  19. 7.ViewPagerIndicator
  20. base_review

热门文章

  1. nohup原理
  2. WinForms 嵌入 Web服务
  3. python时间加减
  4. TensorFlow学习报告
  5. CI2454 低成本高性能SOC产品 遥控产品的绝佳选择
  6. 深入理解JVM 学习笔记2
  7. MySQL简介&通用语法&分类
  8. 关于window的文件路径
  9. 26 docker 安装 solr
  10. ElasticSearch入门学习笔记