Automapper问题记录
在Automapper使用中会碰到一些未能映射或者错误的问题,这些问题可能会经常忘记如何处理,想到一些就记录一些:
映射值有时为空又不报错的情况
这很可能是由于目标类中的部分属性有问题导致的,最简单的方式为使用排除法,将可能有问题的属性Ignore掉。嵌套类型也可以这样排查。
ProjectTo时,ForMember不可使用延迟加载
以下为例,不加ToList()则Actions的值是延迟映射,结果是无法正确获取的,或者会导致获取时针对CommonAction生成大量SQL语句
CreateMap<View, ViewDto>().ForMember(d => d.ParentName, s => s.MapFrom(x => x.ParentID.HasValue ? x.ParentView.Name : null)).ForMember(d => d.ParentUrl, s => s.MapFrom(x => x.ParentID.HasValue ? x.ParentView.URL : null)).ForMember(d => d.ShowInMenu, s => s.MapFrom(x => x.Show)).ForMember(d => d.Actions, s => s.MapFrom(x => x.ViewAction.Select(ca => ca.CommonAction.Name).OrderBy(ca => ca).ToList())).ForMember(d => d.Level, s => s.Ignore()).ForMember(d => d.IsLeaf, s => s.Ignore()).ForMember(d => d.Icon, s => s.Ignore())
正常:
否则:
转载于:https://www.cnblogs.com/ceci/p/10074880.html
Automapper问题记录相关推荐
- 分享一个简单程序(webApi+castle+Automapper+Ef+angular)
前段时间在周末给朋友做了一个小程序,用来记录他们单位的一些调度信息(免费,无版权问题).把代码分享出来.整个程序没有做任何架构.但是麻雀虽小,用到的技术也没少.WebApi+Castle+AutoMa ...
- ASP.NET Core 1.0 开发记录
ASP.NET Core 1.0 更新比较快(可能后面更新就不大了),阅读注意时间节点,这篇博文主要记录用 ASP.NET Core 1.0 开发简单应用项目的一些记录,以备查阅. ASP.NET C ...
- AutoMapper学习笔记
进入公司后学习到的东西,之前记录在github上 现在搬运过来 AutoMapperDemo 需要安装两个包 AutoMapper AutoMapper.Extensions.Microsoft.De ...
- 开发小技巧(日常记录)
日常的开发笔记----定期随手更新 C#开发: TimestampHelper时间戳转换工具 using System; using System.Collections.Generic; using ...
- Automapper如何全局配置map条件过滤null值空值对所有映射起效
我们在使用automapper的时候经常会遇到这样的问题:假设展示给用户的数据我们用UserDto类,User类就是我们的实体类.在给用户编辑的时候,我们可能某些字段在数据库中为Null,这时候需要一 ...
- AutoMapper的源码分析
最近有一个小项目需要提供接口给第三方使用,接口会得到一个大的XML的字符串大约有8个对象100多个字段,在映射到Entity只能通过反射来赋值避免重复的赋值,但是明显感觉到性能下降严重,因为以前接触过 ...
- 第9章 初识SqlSugarCore之AutoMapper
1 AutoMapperExtensions(以泛型形式,扩展) using AutoMapper; namespace Web.Extensions { /// <summary> // ...
- 【AutoMapper官方文档】DTO与Domin Model相互转换(下)
Mapping Inheritance-映射继承 关于映射继承,其实在"Lists and Array-集合和数组"这一节点有提到,但是只是说明下AutoMapper解决映射继承所 ...
- mysql建立联合索引,mysql建立唯一键,mysql如何解决重复记录联合索引
在项目中,常常要用到联合唯一 在一些配置表中,一些列的组合成为一条记录. 比如,在游戏中,游戏的分区和用户id会形成一条记录.(比如,一个qq用户可以在艾欧尼亚.德玛西亚创建两个账号) 添加联 ...
- 实现 连续15签到记录_MySQL和Redis实现用户签到,你喜欢怎么实现?
现在的网站和app开发中,签到是一个很常见的功能 如微博签到送积分,签到排行榜 微博签到 如移动app ,签到送流量等活动, 移动app签到 用户签到是提高用户粘性的有效手段,用的好能事半功倍! 下面 ...
最新文章
- APC UPS网络管理卡 (AP9606/9617/9618/9619)的快速安装及配置指南
- finally代码块
- UIImageJPEGRepresentation和UIImagePNGRepresentation
- rss聚合模式案例_RSS的完整形式是什么?
- 还原二叉树--根据后序中序输出先序
- Linux内核配置选项简介
- 跨终端游戏平台:腾讯START云游戏 for Mac
- 【数据分析 R语言实战】学习笔记 第六章 参数估计与R实现(上)
- 虚拟串口VSPD_V10.0.944官方最新版
- idea快速搭建ssm框架
- 一文教你学会使用 th:block
- 北京航空航天大学研究生院计算机科学与技术哪个方向偏嵌入式,北京航空航天大学研究生专业介绍:计算机科学与技术...
- 飞扬的小鸟JavaScript实现
- 【can总线】stm32的can控制器
- Arduino循迹小车教程四----代码篇
- 黑马57期视频免费下载
- NOIP 模板整理(多图预警╮(╯▽╰)╭)
- 常见的POST提交数据方式
- 写文章一年多以来,我经历了被喷被拉黑被赞美,我哭了
- 宠物猫家具定制 喵喵的家 个性化定制还可以这样操作