いかどうかを確認する指定の型(システム。タイプ)を継承から特定の基底クラス(ます。純額)?

StackOverflow https://stackoverflow.com/questions/129277

質問

そうすることができないとい答えんだ何かが足りないのだが、ここでも...しなければならない型では、実機にて評価してください。タイプ---なインスタンス)はどう思いを継承別の具体的なベース。

役に立ちましたか?

解決

をご利用 IsSubclassOf の方法 システム。タイプ クラスです。

他のヒント

気をつけなければいけないの解明と Type.IsSubTypeOf()Type.IsAssignableFrom():

  • IsSubType() 戻ります true る場合のみ、指定されたタイプから 指定されたタイプです。に戻りま false 指定されたタイプ 指定されたタイプです。

  • IsAssignableFrom() 戻ります true 指定されたタイプのいずれか 指定された型または由来から、指定されたタイプです。

でご利用の場合これらの比較 BaseClassDerivedClass (これを継承 BaseClass して:

BaseClassInstance.GetType.IsSubTypeOf(GetType(BaseClass)) = FALSE
BaseClassInstance.GetType.IsAssignableFrom(GetType(BaseClass)) = TRUE

DerivedClassInstance.GetType.IsSubTypeOf(GetType(BaseClass)) = TRUE
DerivedClassInstance.GetType.IsAssignableFrom(GetType(BaseClass)) = TRUE

編集:上記の解決に失敗した場合に、基底タイプをお探しでインターフェース。以下のソリューション動作の種類に継承するのではクラスまたはインタフェースを

// Returns true if "type" inherits from "baseType"
public static bool Inherits(Type type, Type baseType) {
    return baseType.IsAssignableFrom(type)
}

日本半導体製造装置協会のホ抽出物からの MSDN 記事:

trueの場合[引数]のタイプに表示されるものと同じタイプ、または現在のタイプに継承階層での[引数]である場合、又は電流タイプのインタフェース[引数]を実装した場合、[引数]は汎用型のパラメータの型を表す一つの制約の[引数].falseの場合これらの条件がtrueの場合、または[引数]はnull参照(ものではない視覚。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top