機器基本クラスから派生した Face クラスがあります。基本クラス (機器) には、データベース内の行 ID に基づいて機器オブジェクトを設定して返すメソッドがあります。
派生クラス (FaceClass) では、スーパーを呼び出します
public PPE_EquipmentClass GetEquipmentByRowID(Int32 rowID)
{
PPE_EquipmentClass Equipment = new PPE_EquipmentClass();
returns Equipment;
}
派生クラスで:
public class PPE_Face : PPE_EquipmentClass
{
public PPE_Face GetFaceData(Int32 rowID)
{
if (rowID>0)
{
try
{
PPE_Face Face = null;
Face = new PPE_Face();
PPE_EquipmentClass _ppeEquip = new PPE_EquipmentClass();
_Face =(PPE_Face) _ppeEquip.GetEquipmentByRowID(rowID);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
}
}
}
}
しかし、私は得続けます
「タイプ 'PPEWebApp.Classes.PPE_EquipmentClass' のオブジェクトをタイプ 'PPEWebApp.Classes.PPE_Face にキャストできません」
Equipment が基本クラスであるにもかかわらず、ダウン キャスティングが機能しない理由がよくわかりません。