当前位置:  开发笔记 > 编程语言 > 正文

如何在C#.NET中深层复制不同类型的对象

如何解决《如何在C#.NET中深层复制不同类型的对象》经验,为你挑选了1个好方法。

我需要按字段名称映射ObjectV1和ObjectV2之间的所有字段值和子集合.ObjectV2与ObjectV1位于不同的namspace中.

模板ClassV1和ClassV2之间的继承已被打折扣,因为这两个类需要独立发展.我已经考虑过使用反射(慢速)和二进制序列化(也很慢)来执行公共属性的映射.

有首选方法吗?还有其他选择吗?



1> Chris Ballar..:

作为每次使用反射的替代方法,您可以创建一个使用Reflection.Emit动态创建复制方法的辅助类 - 这意味着您只能在启动时获得性能.这可以为您提供所需的灵活性和性能组合.

由于Reflection.Emit非常笨重,我建议检查一下这个 Reflector插件,这对构建这种代码非常有用.

推荐阅读
帆侮听我悄悄说星星
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有