Gram z FluentNHibernate i NH 3.0, korzystając z dostawcy LINQ i nowej składni QueryOver.NHibernate 3.0: Nie FirstOrDefault() z QueryOver?
Teraz QueryOver Chcę dostać element (zwany wynik) o wartości znacznika czasu jak najbliżej do danej wartości, ale nie wyższa:
Result precedingOrMatchingResult = Session.QueryOver<Result>().
Where(r => r.TimeStamp < timeStamp).
OrderBy(r => r.TimeStamp).Desc.
FirstOrDefault(); //get the preceding or matching result, if there is any
Teraz Intellisense mówi mi, że nie ma coś takiego jak metoda FirstOrDefault()
. Mogę, oczywiście, wyliczyć moje zamówione zapytanie, a następnie użyć LINQ, aby uzyskać mój przedmiot. Ale najpierw załadowałoby wszystkie elementy do pamięci.
Czy istnieje alternatywa dla FirstOrDefault()
, czy też zrozumiałem coś zupełnie nie tak?
Poszukaj 'SingleOrDefault()'. Proszę przyjąć odpowiedź @RRR. –