我目前正在玩弄繼承的方法。現在我有一個名爲「BaseData」的基類,它被另外4個類繼承,其中一個類是Category。將基類的返回值作爲繼承類來投射
我在BaseData中有一個輔助方法,它目前返回一個BaseData數據類型。我可以從繼承類調用助手方法,但我添加了一個類到它的轉換。現在我明白,即使Category從BaseData繼承,它們是兩個完全不同的類。有沒有正確的方法來做我想做的事情?或者甚至有可能?
我的基類,看起來像這樣
public class DataBase
{
// Accessors and stuff
internal static DataBase BindDataToInstance(DataRow dr)
{
var condition = new DataBase()
{
ID = (string)dr["ID"],
Title = (string)dr["Title"],
Description = (string)dr["Description"]
};
return condition;
}
}
我想調用該方法由
public class Condition : BaseData
{
public static Condition GetCondition()
{
return (Condition)BindDataToInstance(ConditionDal.GetCondition(conditionId));
}
提前感謝!
編輯:基本上,我想以基類的實例,並把它變成一個派生類
是驚悚克魯格提出的代碼的實例就是我目前使用的 - 每一個BindDataToInstance方法類。除了返回類型外,每個都完全相同。
您能否澄清一下您的問題,例如:通過張貼一些代碼? –
聽起來你不需要添加演員。你沒有真正說出你想要做什麼,所以不可能回答是否有正確的/可能的方式來做到這一點。 – Daniel
分享代碼,它將非常有助於我們理解你的目標。 你也可以給出一個非常具體的問題,如:「我無法從iLoveCats繼承iLoveCats類,但我可以從iHateDogs中獲得它」爲什麼?或者我不能讓貓跟狗說話呢?等 你的問題很難回答,因爲它就像我做了兩隻動物一隻有兩條腿,另一隻它們不是如何工作? – JPK