.net入门模型映射转换问题
程序员文章站
2022-04-15 20:13:22
关于个人总结的.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