Mam IQueryable
z NHibernate i chciałbym mieć zapytanie linq, aby zsumować określoną kolumnę, ale gdy mój stan na metodzie Where
daje mi pusty wynik nie chcę, aby uzyskać wyjątek, ale nie chciałbym trafić kwerendy, aby uzyskać wszystkie rekordy i po to podsumować w pamięci, chciałbym coś takiego coalese
polecenia sQL, dla próbki:Nie otrzymuje wyjątku, gdy kolekcja jest pusta przy użyciu metody Sum i Nhibernate
// I get exception when its empty
var query = MyQueryable()
.Where(x => x.IsDone)
.Select(x => x.Value)
.Sum();
mam zrobić coś takiego:
// I get 0, its ok, but ToList(), list all records on memory,
// I just want to get a single value
var query = MyQueryable()
.Where(x => x.IsDone)
.Select(x => x.Value)
.ToList()
.Sum();
Czy jest jakiś sposób?
Dziękuję.
Co z warunkiem if przy użyciu operatora Any? – gustavodidomenico
Czy próbowałeś 'DefaultIfEmpty'? – I4V
Linq NHibernate nie obsługuje 'DefaultIfEmpty' :( –