应用层:Application
领域层:Domain Model Layer

为什么要用Mapper,随着技术的变化应用层的DTO会发生变化。大的业务契约不能够保证代码上线一次就成功。需要更换契约,SOA1->SOA2。契约中的长名称变成了短名称。由UserInvoiceItem 变成了  InvoiceTitle  如下


SOA 1.0版本
    [Serializable]public class UserInvoiceItem{public UserInvoiceItem();// Summary://     发票IDpublic long InfoID { get; set; }//// Summary://     发票标题public string Title { get; set; }//// Summary://     Uidpublic string Uid { get; set; }}
}

SOA 2.0 版本
// Summary://     常用发票抬头信息[Serializable][DebuggerStepThrough][DesignerCategory("code")][GeneratedCode("System.Xml", "4.0.30319.1009")][ProtoContract][XmlRoot(Namespace = "/platform/sps/InvoiceService/v1", IsNullable = false)][XmlType(Namespace = "/platform/sps/InvoiceService/v1")]public class InvoiceTitle{public InvoiceTitle();// Summary://     常用发票抬头ID[ProtoMember(2)]public long inId { get; set; }//// Summary://     常用发票抬头[ProtoMember(3)]public string tle { get; set; }//// Summary://     用户ID[ProtoMember(1)]public string uid { get; set; }}

UserInvoice.Items.Add(Mapper.Map<UserInvoice,UserInvoiceItem>(InvoiceItem));
UserInvoice.Items.Add(Mapper.Map<UserInvoice,InvoiceTitle>(InvoiceItem));

转载于:https://www.cnblogs.com/kfsmqoo/p/4505562.html

DDD-Mapper相关推荐

  1. C#进阶系列——DDD领域驱动设计初探(五):AutoMapper使用

    前言:前篇搭建了下WCF的代码,就提到了DTO的概念,对于为什么要有这么一个DTO的对象,上章可能对于这点不太详尽,在此不厌其烦再来提提它的作用: 从安全上面考虑,领域Model都带有领域业务,让Cl ...

  2. 【转】阿里技术专家详解DDD系列 第二讲 - 应用架构

    填坑.谢谢大家对这个系列的期待,持续更新,欢迎关注此账号. 第一篇内容附地址: 阿里巴巴淘系技术:阿里技术专家详解 DDD 系列 第一讲- Domain Primitive​zhuanlan.zhih ...

  3. 殷浩详解DDD:如何避免写流水账代码?

    简介: 在日常工作中我观察到,面对老系统重构和迁移场景,有大量代码属于流水账代码,通常能看到开发在对外的API接口里直接写业务逻辑代码,或者在一个服务里大量的堆接口,导致业务逻辑实际无法收敛,接口复用 ...

  4. yang模型中rpc_领域驱动模型(DDD)设计讲解

    一. 什么是领域驱动模型(DDD)? 领域驱动模型一种设计思想,我们又称为DDD设计思想.是一种为了解决传统设计思想带来的维护困难,沟通困难和交互困难而产生的一种新的思想.也解决了在部分公司中,一个项 ...

  5. DDD(领域驱动设计)系列之二-应用架构

    架构这个词源于英文里的"Architecture",源头是土木工程里的"建筑"和"结构",而架构里的"架"同时又包含了& ...

  6. 领域驱动设计 (DDD)实例分析

    本文结合实例来分析下领域驱动设计 (DDD) 文章目录 啥是DDD 啥是驱动 DDD误解 啥时候用 啥是复杂 具体解决啥 为啥会耦合 咋解决耦合 咋做分治 咋做分界 模块 分层 咋落地 本文小结 啥是 ...

  7. MVC模式和DDD模式对比,谁才是银弹?

    目录 MVC模式和DDD模式对比,谁才是银弹? 从DDD的角度看MVC架构的问题 第一层:初出茅庐 第二层:草船借箭(战术设计) 第三层:运筹帷幄(战略设计) DDD的不足 总结 MVC模式和DDD模 ...

  8. DDD落地过程中有关DTO的思考

    DDD中哪些对象是DTO? DTO-Data Transfer Object,数据传输对象,用作数据传输.在落地DDD的实践中,由于采用CQRS模式,所以会有大量的Command对象.Query对象以 ...

  9. 了解过什么是 DDD吗?一文带你掌握!(至尊典藏版)

    目录 前言 1. 走进 DDD 1.1 为什么要用 DDD ? 1.2 DDD 作用 2. DDD 架构 2.1 DDD 分层架构 2.2 各层数据转换 3. DDD 基础​编辑 3.1 领域和子域 ...

  10. DDD 实战 (11):冲刺 1 代码 TDD 实现之道

    接上篇<DDD 实战 (10):冲刺 1 战术之服务设计(下)及技术决策>后,我们接下来的重点,就是要展示真正的代码实现了.在本篇中,我将围绕 TDD(Test-driven develo ...

最新文章

  1. 20172310 2017-2018-2 《程序设计与数据结构》第八周学习总结
  2. 软件配置文件如何读写
  3. js设置奇偶行数样式
  4. cf#401(Div. 2)B. Game of Credit Card(田忌赛马类贪心)
  5. 我们每天努力上班赚钱,财富离我们很远
  6. 超宽带 DWM1000模块 校准
  7. python rgb565_读取RGB565格式的图像
  8. 陶哲轩实分析 习题5.5.2
  9. 我和《独角兽项目》背后的故事
  10. 新能源汽车OTA升级中的UDS通信分析
  11. 2021年中国家具行业现状及未来趋势分析:线上渠道将成为新增长点[图]
  12. 认识TIA博途Portal软件平台
  13. 第一次参与国际空间站ISS 的SSTV活动
  14. 计算机表格中如何计算数据透视表,Excel中如何在数据透视表中进行计算
  15. 2021年中国体育用品市场:耐克、阿迪后退,安踏持续向上破圈
  16. 买卖时机APP 开启股票交易大数据时代!
  17. linux查不到 隐藏目录,linux查询系统所有隐藏档案(不包括目录)的命令
  18. 计算机网络实验一 常用网络命令操作
  19. 妖精的尾巴魔导少年怎么用电脑玩 妖精的尾巴魔导少年模拟器教程
  20. JLINK转接板便携精简版

热门文章

  1. 积德行善真的有用吗?
  2. 股票市场的本质是为优质企业提供融资的平台
  3. 有些投资人从机构出来,自己单干做投资,募资一毛钱都没募到
  4. 买房就是创业,房东就是创业者
  5. 分布式系统领域经典论文翻译集
  6. 在windows实现和smtp交互发送邮件
  7. 3.1.1 计算机网络之数据链路的基本概念和功能概述(转载)
  8. 思科模拟器划分子网实验报告_模拟多子网群集以设置SQL Server Always On可用性组–实验设置
  9. 网络嗅探器如何嗅探_SQL Server中的运行时常量嗅探
  10. azure云数据库_从Azure Databricks将数据加载到Azure SQL数据库