如何将一个类对象赋值给另一个类对象

本文关键字:对象 赋值 另一个 一个 | 更新日期: 2023-09-27 18:17:16

我有两个类,除了名称完全相同。我没有访问类中的任何一个以更改其中的任何内容。在我的代码中,我需要将一个类中的一个复制到另一个类。我怎么能这样做呢?

class A
{
     string a;
}
class b
{
     string a;
}
     a a1=new a();
     b b1=new b1();
     a1=b1;

我想在c#代码中将一个类对象赋值给另一个类对象。

如何将一个类对象赋值给另一个类对象

在您所展示的代码中,您无法将A的实例分配给类型为b的变量(或相反)。类具有相同字段的事实并不意味着一个类可以隐式地转换为另一个类。在不改变任何一种类型的情况下,最好的方法是创建一个方法,该方法接受一种类型并创建另一种类型的新实例,复制相关的值。

将ObjectA序列化为json字符串,然后将其序列化为ObjectB

听起来你可能在问选角问题?就像其他人提到的那样,这对类本身不起作用。可以循环遍历要转换的类中的每个对象/字符串,并以这种方式强制转换每个对象。这似乎就是你最终想要完成的。

 // Create a new derived type.
 Giraffe g = new Giraffe();
 // Implicit conversion to base type is safe.
 Animal a = g;
 // Explicit conversion is required to cast back
 // to derived type. Note: This will compile but will
 // throw an exception at run time if the right-side
 // object is not in fact a Giraffe.
 Giraffe g2 = (Giraffe) a;

来源:https://msdn.microsoft.com/en-us/library/ms173105.aspx