Próbuję wykonać kwerendy z LINQ na ASP.NET MVC 3.Korzystanie DateTime? .Value.TimeOfDay w LINQ kwerendy
Mam modelu, pozwala wywołać zdarzenia. Ten obiekt Event ma właściwość Date, DateTime ?. To, czego chcę, to pobrać wydarzenia, które są między 2 TimeSpans.
Teraz mój kod wygląda następująco:
TimeSpan From = new TimeSpan(8,0,0);
TimeSpan Until = new TimeSpan(22,0,0);
var events =
from e in db.Events
where e.Date.Value.TimeOfDay >= From,
e.Date.Value.TimeOfDay <= Until
select e;
jest wyjątek, mówiąc mi, że „Określony element typu«TimeOfDay»nie jest obsługiwana w LINQ do podmiotów.”
Nie da się obejść tego problemu i przez cały dzień próbowałem. Proszę, pomóż mi, jestem taka sfrustrowana. :(
EDIT:..
Zapomniałem napisać tutaj „TimeOfDay” po e.Date.Value W każdym razie, ja w moim kodu
nie mogę używać DateTime bo muszę filtrować zdarzenia, które występują między pewnej porze dnia, mimo daty zdarzenia.
Twój przykładowy kod nawet nie używa 'TimeOfDay' - Zakładam, że tak jest, zamiast używać' Date' (jak na twój kod)? –
Dlaczego używasz dwóch obiektów TimeSpan zamiast dwóch obiektów DateTime do filtrowania zdarzeń? – Steven