Подтвердить что ты не робот

Вернуть null для FirstOrDefault() в пустой IEnumerable <int>?

Скажем, у меня есть следующий фрагмент:

int? nullableId = GetNonNullableInts().FirstOrDefault();

Поскольку GetNonNullableInts() возвращает целые числа, FirstOrDefault по умолчанию будет 0.
Есть ли способ сделать FirstOrDefault в списке целых чисел возвращать значение null, когда список пуст?

4b9b3361

Ответ 1

int? nullableId = GetNonNullableInts().Cast<int?>().FirstOrDefault();

Ответ 2

FirstOrDefault зависит от T от IEnumerable<T>, чтобы узнать, какой тип для возврата, почему вы получаете int вместо int?.

Итак, вам нужно будет отбросить ваши элементы до int? перед возвратом любого значения, точно так же, как Matt сказал