Мне нужно проверить объект, чтобы увидеть, является ли он нулевым, типом значения или IEnumerable<T>
, где T
- тип значения. Пока у меня есть:
if ((obj == null) ||
(obj .GetType().IsValueType))
{
valid = true;
}
else if (obj.GetType().IsSubclassOf(typeof(IEnumerable<>)))
{
// TODO: check whether the generic parameter is a value type.
}
Итак, я обнаружил, что объект имеет значение null, тип значения или IEnumerable<T>
для некоторого T
; как проверить, является ли T
типом значения?