1、AutoMapper主要用户将Models转换为DTO(数据传输对象),DTO更注重于数据对领域对象进行合理封装,从而不会将领域对象过分暴露于表现层。

2、从安全角度上考虑,领域对象Models一般带有领域业务,让客户端直接调用models,就意味着可以直接完成业务逻辑的调用,这是一种不安全的机制

3、从传输层面将,models带有业务数据,而展示的时候有一些数据,对于UI是没有意义的,如果直接访问Models

4、网上还说了DTOmodel最大的意义在于跨平台,Domain Model都是与特定的语言的数据类型有关,而这些数据类型是不能跨平台的,比如Java的类型就不能被C#使用。但在分布式模式下,Client端与Server端的平台不同是很正常的,如果Service直接返回Domain Model,Client端根本无法解析,这就要求Service返回的结果必须是标准的格式字节流

 

具体代码稍后放上

posted on 2018-07-24 16:46  高兴happy  阅读(228)  评论(0)    收藏  举报