Как я могу проверить наличие нулевых значений на IEnumerable<T>
, где T может быть либо ссылочным типом, либо Nullable<T>
типом?
Я получаю параметр object
в методе, который может быть IEnumerable<string>
или IEnumerable<bool?>
или IEnumerable<int?>
или IEnumerable<Guid?>
и т. д. (это также могут быть типы, не относящиеся к коллекции ... отсюда тип object
). И мне нужно проверить наличие нулей.
Итак, я попробовал что-то вроде value is IEnumerable<object> objValue && objValue.Contains(null)
, но это работает только для ссылочных типов. Когда это Nullable<>
, оно не работает из-за отсутствия ковариации типов значений.
Есть ли способ, которым я могу решить эту проблему, не прибегая к куче размышлений?