Я хочу проверить, поддерживает ли тип IComparable, перед его сортировкой, но я обнаружил, что проверка, поддерживает ли тип интерфейс IComparable с использованием «is», не всегда дает мне правильный ответ. Например, typeof(int) is IComparable
возвращает значение false, хотя int поддерживает интерфейс IComparable.
Я отмечаю, что typeof(int).GetInterfaces()
перечисляет IComparable, а typeof(int).GetInterface("IComparable")
возвращает тип IComparable, так почему же "is" не работает, как я ожидаю?