Używam NHibernate do wysyłania zapytań do mojej bazy danych przy użyciu API kryteriów. Kim jest poniżej kryteria:Projekcje NHibernate i klauzula "o"
ICriteria c = Session.CreateCriteria(typeof(Transaction));
ProjectionList projections = Projections.ProjectionList();
projections.Add(Projections.Sum("Units"), "Units");
projections.Add(Projections.GroupProperty("Account"), "Account");
projections.Add(Projections.GroupProperty("Security"), "Security");
c.SetProjection(projections);
to działa dobrze, ale co chciałbym jest sposobem, aby móc ograniczyć zapytanie do powrotu, gdy tylko „Jednostki” własność jest> 0. W SQL bym po prostu nam klauzula Having Units > 0
jednak nie byłem w stanie znaleźć sposób, aby to zrobić w NHibernate. Czy ktoś ma jakieś pomysły lub jest moją jedyną opcją korzystania z HQL?
Niestety, to nie działa tak, jak chciałem. Ograniczenie jest stosowane w klauzuli WHERE, a nie w klauzuli posiadania. Końcowym rezultatem jest to, że każdy pojedynczy wiersz jest ograniczony, a nie suma wszystkich wierszy. – lomaxx
Dziwne, mógłbym przysiąc, że użyłem tego wcześniej i zadziałało. Niestety najlepsza dokumentacja, którą mogę znaleźć, to łatka: http://nhjira.koah.net/browse/NH-1280. –
dzięki za informacje ... wygląda na to, że będziemy musieli poczekać na 2.1.0, zanim to będzie obsługiwane. Wierzę, że jest wbudowany w Hibernate, ale NHibernate wciąż czeka – lomaxx