从DTO转换为实体和实体到DTO的简便方法?

时间:2008-10-15 13:27:57

标签: web-services serialization translation dto-mapping

我最近参与了几个分布式客户端/服务器项目,我们经常遇到的一个痛点是将DTO对象转换为我们的实体,反之亦然。我想知道是否有人对这个时间下沉有一个“简单”的解决方案?

我想到的一件事就是使用反射来进行某种翻译...我想你必须确保你的属性名称在线的两侧完全相同 - 但看起来它可能会起作用。

只是想找到一种方法来避免一些时间在我的开发中下沉。

谢谢!

4 个答案:

答案 0 :(得分:3)

疼痛和风险

手动获取/设置属性! 你试过这个:http://dozer.sourceforge.net/

用于将bean转换为bean的灵活且可配置的框架。可能会有帮助!

答案 1 :(得分:3)

我最近一直在使用AutoMapper,它就像一个魅力。

答案 2 :(得分:0)

我已成功使用XDoclet等工具(尽管不应该难以编写脚本)来自动生成传输对象和简单的实体翻译。

那就是说,如果您认为您的实体翻译很简单,可以使用反射来完成,那么您是否有理由不能通过线路而不是DTO传递实体对象?有一个稍微自定义的序列化可能比完整的DTO更好。

答案 3 :(得分:0)

使用ValueInjecter,您可以将任何内容映射到任何内容,例如

 object <-> object
 object <-> Form/WebForm
 DataReader -> object

它具有很酷的功能,如:扁平化和不平整

下载包含大量示例(asp.net mvc的示例应用程序,Web表单,winforms,单元测试)