Ответ 1
Я думаю, что вы ищете Type.IsAssignableFrom
:
public bool IsOfType(Type type)
{
return _item != null && type.IsAssignableFrom(_item.GetType());
}
Или, если вы можете сделать метод общим, более простым, поскольку вы можете использовать is
с параметром типа:
public bool IsOfType<T>()
{
return _item is T;
}
EDIT: Как отмечено в ответе Вима, также Type.IsInstanceOf
, что упрощает не общий метод:
public bool IsOfType(Type type)
{
return type.InstanceOf(_item);
}