Мне нужно найти, является ли тип определенным родовым типом.Проверьте, являются ли два общих типа равными
class MyType<T> {}
var instance = new MyType<int>();
var type = instance.GetType();
Эта проверка не работает, но это то, что я хочу проверить. Если тип этого родового типа, независимо от того, что такое T
.
type == typeof(MyType<>)
Это действительно работает, но чувствует себя грязным. Это также может быть неправильным, поскольку это не FullName
.
type.Name == typeof(MyType<>).Name
Я предполагаю, что есть способ сделать это, но я не нашел его. Использование IsAssignableFrom
не будет работать, потому что мне нужно знать, равны ли текущий тип, а не один из его родителей.