/ / ईएफ कोर में चल रही घटनाओं को प्राप्त करें - इकाई-रूपरेखा, asp.net-core, ef-core-2.0

ईएफ कोर - इकाई-फ्रेमवर्क, एएसपीनेट-कोर, ef-core-2.0 में चल रहे ईवेंट प्राप्त करें

मेरे पास मेरे ईवेंट पंजीकरण आवेदन के लिए एक डेटाबेस में कुछ घटनाएं हैं, जहां तिथियां निर्धारित की जा सकती हैं

public DateTime? DateStart { get; set; }
public DateTime? DateEnd { get; set; }

दोनों क्षेत्र अशक्त हैं, और मैं चाहता हूं कि अगर ईटर चल रहा हो 1) DateStart आज की तरह ही तारीख है, या 2) अब DateStart और DateEnd के बीच है

public async Task<List<EventInfo>> GetOngoingEventsAsync()
{
return await _db.EventInfos
.Where(i =>
i.Published &&
i.DateStart.Value.Date == DateTime.Now.Date ||
i.DateStart.Value.Date <= DateTime.Now.Date <= i.DateEnd.Value.Date)
.OrderBy(s => s.DateStart)
.ToListAsync();
}

हालांकि मेरा कोड ऊपर रिटर्न: Operator "<=" cannot be applied to operands of type "bool" and "DateTime"

उत्तर:

उत्तर № 1 के लिए 1

त्रुटि के पीछे का कारण स्थिति का पहला हिस्सा था i.DateStart.Value.Date <= DateTime.Now.Date मान्य किया जाएगा और में परिवर्तित किया जाएगा Boolean। उसके बाद आप तुलना करने की कोशिश कर रहे थे Boolean साथ में DateTime इस तरह <= i.DateEnd.Value.Date। तो यही कारण है कि मैं दो शर्तों को अलग करता हूं && ऑपरेटर।

(DateTime.Now.Date >= i.DateStart.Value.Date && DateTime.Now.Date <= i.DateEnd.Value.Date)


जवाब के लिए 0 № 2

यह आपके कोड का सही रूप होना चाहिए:

(DateTime.Now.Date >= i.DateStart.Value.Date && DateTime.Now.Date <= i.DateEnd.Value.Date)