I have this piece of code that works perfectly on LinqPad. But when I implement it in Visual Studio it returns no data. Does anyone knows what is wrong? The error I get is Object reference not set to an instance of an object.
from site in Sites
orderby site.Community.Name ascending
where site.Yard.YardID == 1 && site.SiteTypeID == 1
let Cycles = (from sbm in SBMs
              where sbm.CrewSite.SiteID == site.SiteID && sbm.CrewSite.Crew.CrewDate.Year == 2019
              orderby sbm.CrewSite.Crew.CrewDate ascending
              select new
              {
                  Date = sbm.CrewSite.Crew.CrewDate
              }).ToList()
select new 
{
    Pin = site.Pin,
    Community = site.Community.Name,
    Neighbourhood = site.Neighbourhood,
    Address = site.StreetAddress,
    Area = site.Area,
    Notes = site.Notes,
    Cycle1 = Cycles.OrderBy(x => x.Date).FirstOrDefault().Date.Equals(null) ? (DateTime?)null : Cycles.OrderBy(x => x.Date).FirstOrDefault().Date,
    Cycle2 = Cycles.OrderBy(x => x.Date).Skip(1).FirstOrDefault().Equals(null) ? (DateTime?)null : Cycles.OrderBy(x => x.Date).Skip(1).FirstOrDefault().Date,
    Cycle3 = Cycles.OrderBy(x => x.Date).Skip(2).FirstOrDefault().Equals(null) ? (DateTime?)null : Cycles.OrderBy(x => x.Date).Skip(2).FirstOrDefault().Date,
    Cycle4 = Cycles.OrderBy(x => x.Date).Skip(3).FirstOrDefault().Equals(null) ? (DateTime?)null : Cycles.OrderBy(x => x.Date).Skip(3).FirstOrDefault().Date,
    Cycle5 = Cycles.OrderBy(x => x.Date).Skip(4).FirstOrDefault().Equals(null) ? (DateTime?)null : Cycles.OrderBy(x => x.Date).Skip(4).FirstOrDefault().Date
}
 
    