Ich versuche, dies zu tun, aber es funktioniert nicht, es leer Ergebnisse zurückgibt:Vergleichen Datetime in Entity Framework
if (inputDate != null)
{
dataContext.myTable
.Where(r => r.myDate.HasValue &&
r.myDate.Value.Day == inputDate.Value.Day)
}
ich zwei Nullable-DateTime
Werte vergleichen wollen, möchte ich nur DateTime
Werte aus Datenbank abgerufen werden das gehört zu einer bestimmten Date
. Und um dieses Problem zu vereinfachen, versuche ich zuerst nur ihren Wert zu vergleichen.
Bitte nicht als doppelt markieren, ich arbeite mit EF5, so habe ich keine DbFunctions.TruncateTime()
Funktion.
Sie könnten einfach 'r.myDate.Date == inputValue.Date' verwenden. Die Verwendung von "Day" bedeutet, dass Sie Spiele unabhängig vom Monat erhalten. –
Nicht funktioniert es gibt eine Ausnahme: * Die angegebene Member 'Date' wird in LINQ to Entities * nicht unterstützt. Tatsächlich überprüft EntityFramework nicht, wie dieser Code in sql übersetzt wird. –
Versuchen Sie, 'r.myDate.HasValue' zu entfernen und dann' r.myDate.Date == inputValue.Date' –