public abstract class ContentManagedEntity
{
public Guid Guid { get; set; }
public bool Active;
public int DisplayOrder;
}
public class StoreCategory : ContentManagedEntity
{
public string Name { get; set; }
}
public class XMLStoreCategory : StoreCategory, IXMLDataEntity
{
public bool Dirty = false;
}
void main() {
var storecategory = new StoreCategory { Name = "Discount Stores" };
var xmlstorecategory = (XMLStoreCategory) storecategory; // Throws InvalidCastException
}
実行時に最後の行にInvalidCastExceptionがスローされる理由はありますか? 基本クラスから継承クラスにキャストするときにInvalidCastExceptionが発生しますか?
は(私がこれを書いたようフンは、その答えは、私の頭の中に毎日のように明確に現れた。後世のためにそれを投稿し、ちょうど私が右のそれを持っていることを確認する。)すべてXMLStoreCategory
オブジェクトは
StoreCategory
sは
うん、質問を投稿していたときにそれを理解しました。今はかなり馬鹿だと感じる。まあ、少なくとも、他の誰かが "teh st00pid"の一時的な契約を締結している場合、彼らはこれを参照することができます。 :) –