我有两节课。
Class A:
public class A {
prop string p1 { get; set; }
prop string p2 { get; set; }
prop string p3 { get; set; }
}
Class B:
public class B {
prop string p1 { get; set; }
prop string p3 { get; set; }
}
现在假设我们有一个来自类的对象B
我们想将它分配给类中的对象A
.
B b_obj = new B(){
p1 = "something",
p2 = "something else"
}
A a_obj = new A(){
p1 = b_obj.p1,
p3 = b_obj.p3,
}
我认为上述解决方案不是最好的方法。
What is 最佳实践分派b_obj
到类中的另一个对象A
?
提示:所有财产都在class B
有类似的属性class A
您始终可以实现隐式或显式强制转换运算符:
public class B
{
public static explicit operator A(B b)
{
return new A() {
p1 = b_obj.p1,
p3 = b_obj.p3,
}
}
//...
}
现在,您可以在需要时随时编写A
from a B
:
var a = (A)b;
如果您无权访问其中任何一个A
or B
那么你可以实现一个扩展方法:
public static A ToA(this B b)
{
return ...
}
用法也类似:
var a = b.ToA();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)