C#设置对象参数

sza*_*kel 1 c# inheritance equation object

如何将对象的所有属性设置为等于另一个?就像在我的例子中,TCar基本上是一个Car,我怎样才能将共享变量设置为相等?在Java中,如果我没记错的话,我可以轻松地做到这一点.

class Car {

}

class TCar : Car {

}

Car car = new Car();
TCar datcar = new TCar();
datcar = car; Error? Isn't the datcar is a 'Car' too?
Run Code Online (Sandbox Code Playgroud)

我不想手动设置一切.

And*_*bel 5

你的代码不起作用,因为a Car不是TCar.另一种方法是:car = datcar.

但是,这可能不会达到您的预期,因为它只会使两个引用 cardatcar指向同一个TCar对象.

如果要将对象保持为单独的对象,但是使用另一个对象的属性值更新一个对象的所有属性,则必须逐个分配它们.或者您可以使用自动执行此操作的AutoMapper.