Kwerenda agregująca NHibernate dla relacji jeden do wielu
Mam następne podmioty:
<code>class Topic { public virtual int Id {get; private set;} public virtual ICollection<Vote> Votes {get; private set; } } class Vote { public virtual Topic Topic {get; private set;} public virtual VoteType VotedTo {get; private set;} // enum VotedUp, VotedDown } </code>
Muszę załadować z db następną informację - wszystkie tematy (identyfikatory, właściwie nazwy, ale w tym przypadku demonstracyjnym to nie ma znaczenia) i dwa kolejne polaCountOfVotedUp, CountOfVotedDown (agregaty). Tak więc, jak rozumiem w świecie SQL, potrzebujemy łączenia, grupowania, spraw i liczenia.
Czy można uzyskać te informacje za pomocą LINQ przy mniejszej liczbie operacji przy użyciu db? Mam na myśli N + 1, dodatkowe selekcje, połączenia itp.
Wszystko, co próbowałem - to użycie LINQ NH, ale to agregaty Query tylko w Topic.Id i nie mogłem policzyć żadnej kolekcji głosów.