いくつかのプロパティ (主に文字列と整数) を含む相互クラス A から派生した 2 つのクラスがあります。クラス B は、追加のプロパティを含む別のクラスです。より正確に、
public class A1 : A {
private B _bee;
public B Bee {
get { return _bee;}
set { _bee = value;}
}
}
public class A2 : A {
private List<B> _beeList;
public List<B> BeeList {
get { return _beeList;}
set { _beeList = value;}
}
}
ここで、A1 のインスタンスが与えられた場合、同じ情報 (つまり、「A」部分のプロパティと「B」のインスタンス) を含む A2 のインスタンスを作成するにはどうすればよいでしょうか。私は次のことを試しました-うまくいくことを望みましたが、うまくいかないことを知っていました...-(A1とA2のインスタンスを「1」と「2」で呼びましょう):
A _a = (A)one; // This obv works
B _b = one.Bee;
A2 _a2 = (A2)_a; // Threw away the Bee - information, so should work imo
_a2.BeeList.Add(_b);
では、A のすべてのプロパティを手動で入力せずにこれを行うにはどうすればよいでしょうか。