Это самый простой способ определить, является ли foo одинаковым или производным от типа T
foo
T
bool Derives<T>(object foo) { return foo is T; }
и точное совпадение будет
bool ExactMatch<T>(object foo) { return foo.GetType() == typeof(T); }
Я не могу придумать более простой способ:)
(и в формате «ответа», чтобы угодить троллям: «Да»)