-6
我有兩個派生類。在相同結構但不同類型的對象之間傳輸數據
public Class A : BaseClass
{
public static somecomplextype Criteria { get; set; }
}
public Class B : BaseClass
{
public static somecomplextype Criteria { get; set; }
}
我只能訪問派生類而不是基類。
現在我有另一個類
public Class SomeClass
{
public SomeClass()
{
//I need a logic for the below to happen...
B.Criteria = (B) A.Criteria //throws invalid cast exception
}
}
問題是A.Criteria之間傳送數據到B.Criteria ...
由於投拋出異常..
我想知道是否有另一種方式。
不,你不能把'A'的一個子類型投射到'B'的另一個子類型。你可以創建一個構造函數來從子類型'B'的對象中產生一個子類型爲'A'的對象,反之亦然,但是我可以發現這種設計的用例很少。確保你知道你在做什麼,並問自己(或軟件工程/編程SE)**爲什麼你決定這麼做,是否有更好的架構解決方案? –
什麼演員?如何解決數據傳輸問題? – itsme86
如果您希望將它們的實例對待相同,請不要創建兩個相同的類型。只需要一種類型即可。 – Servy