映射对象
什么是映射类对象的最佳解决方案,以轻量级类对象的例子:映射对象
客户向CustomerDTO都具有相同的属性名称,我是他们之间的映射思维的最佳优化的解决方案,我知道反思让我感到沮丧,并且为每个映射制作方法都很耗时,所以有什么想法?
在此先感谢。
该死的,打我吧。 +1 – 2010-08-04 15:05:27
automapper是如此之慢,我试过了,测试它比做20次映射手册要慢! – Stacker 2010-08-04 15:11:02
@Zeus。确实 - 但这对您的系统有什么影响? – 2010-08-04 15:12:03
我一直在玩这个,并有以下意见。客户应该继承CustomerDTO还是读/写CustomerDTO?我发现一些DTO生成器只能生成DTO内的数据项向量的哑固定大小数组集合,其他人将允许您指定LIST <>或某些此类集合。高级集合不需要出现在序列化的DTO中,而是需要采取的方法。如果您的解决方案添加了高级集合,那么您可以继承,否则您可能需要读取/写入中间DTO。
我使用Protocol Buffers和XSDObjectGenerator作为我的DTO代(在不同的时间!)。
如果反射放慢你失望太多,尝试Fasterflect:http://www.codeproject.com/KB/library/fasterflect_.aspx
如果您使用的缓存机制,这是没有太大的比手写的代码慢。
即时试试看,我会给反馈 – Stacker 2010-08-04 15:25:48
一种新的选择是UltraMapper。
比我到2017年2月试过的任何东西都快。 (在任何情况下比Automapper快两倍)
它是比AutoMapper更可靠(没有StackOverflows,没有深度限制,没有自引用限制)。
UtraMapper是只需1300行代码而不是超过4500+的Automapper,它更容易理解,维护和贡献于项目。
这是积极开发,但在这一刻它需要社区审查。 试试看,并在页面项目上留下反馈!
反射可能不会像您想象的那样慢下来。 – 2010-08-04 15:05:57
这是否在运行时发生? – AnthonyLambert 2010-08-04 15:24:50
im在层之间映射对象以失去夫妇 – Stacker 2010-08-04 15:30:00