我有一个具有各种属性的对象模型MyObject.有一次,我有两个这样的MyObject实例:实例A和实例B.如果实例B具有非空值,我想将实例A中的属性与实例B的属性进行复制和替换.
如果我只有1个具有3个属性的类,没问题,我可以轻松地对其进行硬编码(这是我开始做的).但实际上我有12个不同的对象模型,每个模型大约有10个属性.
有什么好办法呢?
如果我有一个C#类
public class Foo
{
public int? a { get; set; }
public int? b { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这个类的两个实例
var foo1 = new Foo() { a = 1 };
var foo2 = new Foo() { b = 1 };
Run Code Online (Sandbox Code Playgroud)
我怎么能复制从两个对象的值,以创建一个新的实例Foo包含来自值foo1和foo2?
在Javascript中,这将是如此简单
var foo3 = Object.assign({}, foo1, foo2);
Run Code Online (Sandbox Code Playgroud)