ジェネリック型を比較するis演算子に問題があります。
public interface ISomeInterface<T> where T : SomeBaseClass{
}
public class SomeClass : SomeBaseClass{
}
ここで、is演算子を使用して型を確認します。インターフェイスISomeInterfaceを実装するクラスのインスタンスがあります。
残念ながら、次の問題に直面しています。
// someObject is an Instance of a class implementing interface ISomeInterface<SomeClass>
bool isSomeBaseClass = someObject is ISomeInterface<SomeBaseClass>; // false
bool isSomeClass = someObject is ISomeInterface<SomeClass>; // true
変数のジェネリック型をチェックすることは可能ですか?
よろしくお願いします、トビ