我有一个基类
public class ClassA{
public string Str { get; set;}
}
一个继承自ClassA
的派生类
public class ClassB : ClassA{
public string NewStr { get; set;}
}
当我想要从基类直接转成派生类时我唯一的想法只有从构造函数下手,就像这样
public class ClassB : ClassA{
public ClassB(ClassA obj){
this.Str = obj.Str;
}
public string NewStr { get; set;}
}
但是这很繁琐,有更好的办法吗?
1
rwecho 2020-11-23 16:10:01 +08:00
|
3
lukaz 2020-11-24 20:42:37 +08:00 via Android
序列化 A,再反序列化成 B
|
4
PerFectTime 2020-11-28 17:53:47 +08:00
|
5
yeqiu 2020-12-03 09:18:17 +08:00
???
ClassA classAobj=new ClassA(); ClassB chassBobj=(classAobj as ClassB) |
6
coder001 2020-12-05 01:50:45 +08:00 via Android
没必要纠结于基类还是派生类型。
用即兴接口来玩 duck typing,定义接口,然后实例.AciLike<接口>就能吃了 https://github.com/ekonbenefits/impromptu-interface |