欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

.net入门模型映射转换问题

程序员文章站 2022-06-27 20:54:16
关于个人总结的.net入门模型映射转换问题刚开始使用VS进行.net开发,虽然业务不是很复杂,自己在实践中还是遇到了各种各样的问题,所以我把这些我遇到过的问题都整理了一下,方便自己和大家以后参阅~我使用的是公司自行封装的三层架构,精神是差不多的,映射文件主要分为两个,一个对应仓储层(Core)与业务层(Service)的转换,还有一个对应的是业务层(Service)和控制层(Controller)的转换在定义模型的时候,外键如果没有需要情况下,最好不要出现在除了仓储层模型以外的其他模型中,其他层的模型...

关于个人总结的.net入门模型映射转换问题

刚开始使用VS进行.net开发,虽然业务不是很复杂,自己在实践中还是遇到了各种各样的问题,所以我把这些我遇到过的问题都整理了一下,方便自己和大家以后参阅~

我使用的是公司自行封装的三层架构,精神是差不多的,映射文件主要分为两个,一个对应仓储层(Core)与业务层(Service)的转换,还有一个对应的是业务层(Service)和控制层(Controller)的转换

在定义模型的时候,外键如果没有需要情况下,最好不要出现在除了仓储层模型以外的其他模型中,其他层的模型则是需要什么就声明什么,不需要的字段一律不出现

当待转换的模型字段少,目标模型的字段多的时候,字段名字一样的情况下,模型进行自动匹配映射,目标模型剩余的字段自动放弃匹配

当待转换的模型字段多,目标模型的字段少的时候,字段名字一样的情况下,需要配置映射关系,否则多余的字段已经有值,但是却不知道去找谁
(一个萝卜一个坑)
当待转换模型与目标模型类型不一致时(比如元组模型和普通模型),需要指定转换的itemcfg.CreateMap<待转换模型, 目标模型>()
.ForMember(x => x.Item, a => a.MapFrom(i => i.Item1))

当待转换的模型是一个集合的情况下(比如List),实际上我们需要转换的是Demo,所以在业务层转换组装的时候也需要用一个List将业务层的模型包起来,然后再去进行转换

本人萌新,以上都是自己工作时的总结,如果有不对的地方还需要各位“大拿”批评指正哦~

本文地址:https://blog.csdn.net/LakersBar/article/details/107517201

相关标签: 模型映射 .net