मुझे इसी समस्या का सामना करना पड़ा और इसे समझने की कोशिश में लगभग दो दिन खो गए। यह MySQL के लिए EntityFramework मैपिंग में एक बग प्रतीत होता है।
समाधान DateTime.UtcNow . को स्थानांतरित करना है स्कोप्ड लैम्ब्डा के बाहर गणना और वास्तविक मूल्य में प्लग करें।
var utcNow = DateTime.UtcNow;
query = query.Where(p => p.Published);
query = query.Where(p => !p.StartDate.HasValue || p.StartDate <= utcNow);
query = query.Where(p => !p.EndDate.HasValue || p.EndDate >= utcNow);