Вы должны изменить свой запрос на:
var arInvArea = arInv.Area.Where(p => p != null && p.WithSwimmingPool)
.Select(p => p.Units(ReportDate))
.FirstOrDefault();
Ваша коллекция может содержать NULL
индексов, что приводит к p == null
в вашем запросе.
Если вы случайно используете C # 8, вы можете включить nullable, включив в свой код #nullable enable
. Затем это указывает на все сегменты кода с нулевой ссылочной вероятностью ошибки.