重複の可能性:
クラスがジェネリック クラスから派生しているかどうかを確認する
タイプが何らかの種類であるかどうかをテストするにはどうすればよいList<>
ですか? 例えば。以下の 3 つのクラスのように。
public class Words : List<string>
{
}
public class Numbers : List<double>
{
}
public class BigWords : Words
{
}
私は試した
typeof(List<DateTime>).IsSubclassOf(typeof(List<>))
typeof(Words).IsSubclassOf(typeof(List<>))
typeof(Numbers).IsSubclassOf(typeof(List<>))
typeof(BigWords).IsSubclassOf(typeof(List<>))
しかし、それはFalse
4回戻ってきました。それぞれに期待True
しました。
この質問は他の場所で回答されていると思いますが、継承、ポリモーフィズム、およびジェネリックの言語が混乱する可能性があるため、見つけることができませんでした。