【发布时间】:2011-08-08 11:39:03
【问题描述】:
我有一堂课:
public class Person {
public string FirstName { get; set; }
public string LastName { get; set; }
}
我有两个 Person 实例(person1 和 person2)。我想将 person2 的内容复制到 person1。我想在一条指令中制作此副本,并且不逐个属性地制作:
person1.LastName = person2.LastName;
在文档中,我看到将一个对象复制到另一个对象,但类型不同。类型相同时如何复制对象?
【问题讨论】:
-
@Darin - 这将创建一个参考,而不是一个副本。
-
@Uw Concept,是的,但由于问题不是很清楚,我想我可能会建议这个。
-
不想创建一个引用,而是一个完全独立的副本
-
我建议不要为此使用 AutoMapper - 它不是为克隆项目而设计的(尽管它可能在某些情况下工作)。相反,BinaryFormatter 技巧很神奇,并且很容易封装在扩展方法中。
-
从概念上讲,不,它们不是同一个操作。克隆还涉及私人数据,而不仅仅是公共数据。克隆基本上只查看私有字段,而映射不会。
标签: c# automapper