Search code examples
c#.netlinq

Return null for FirstOrDefault() on empty IEnumerable<int>?


Say I have the following snippet:

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

Because GetNonNullableInts() returns integers, the FirstOrDefault will default to 0.
Is there a way to make the FirstOrDefault on a list of integers return a null value when the list is empty?


Solution

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