我最近参与了几个分布式客户端/服务器项目,我们经常遇到的一个痛点是将DTO对象转换为我们的实体,反之亦然。我想知道是否有人对这个时间下沉有一个“简单”的解决方案?
我想到的一件事就是使用反射来进行某种翻译...我想你必须确保你的属性名称在线的两侧完全相同 - 但看起来它可能会起作用。
只是想找到一种方法来避免一些时间在我的开发中下沉。
谢谢!
答案 0 :(得分:3)
答案 1 :(得分:3)
我最近一直在使用AutoMapper,它就像一个魅力。
答案 2 :(得分:0)
我已成功使用XDoclet等工具(尽管不应该难以编写脚本)来自动生成传输对象和简单的实体翻译。
那就是说,如果您认为您的实体翻译很简单,可以使用反射来完成,那么您是否有理由不能通过线路而不是DTO传递实体对象?有一个稍微自定义的序列化可能比完整的DTO更好。
答案 3 :(得分:0)
使用ValueInjecter,您可以将任何内容映射到任何内容,例如
object <-> object
object <-> Form/WebForm
DataReader -> object
它具有很酷的功能,如:扁平化和不平整
下载包含大量示例(asp.net mvc的示例应用程序,Web表单,winforms,单元测试)