abrufen Ich versuche, eine Gruppe von Linq Abfrage mit NH3 durchzuführen. Ich kenne die unterschwelligen SQL-Schwierigkeiten. Ich weiß, dass es nicht möglich ist, aber im Idealfall würde ich die Gruppe gerne durch eine Entität machen und sie in ihrer Gesamtheit abrufen lassen. Etwas wie:Kann nicht Gruppen von Entitäten oder durch zusammengesetzte Schlüssel mit Nhibernate Linq
var list = from proposals in Session.Query<Proposal>()
group proposals by proposals.Job
into jobGrouping
select new {
Job = jobGrouping.Key,
TotalProposals = jobGrouping.Count()
};
Dies erzeugt eine illegale SQL-Abfrage, da sie die ganze Arbeit Einheit, sondern Gruppe durch seine Id nur abzurufen versucht.
Ich habe versucht, durch ein zusammengesetztes Feld Gruppierung:
var list = from proposals in Session.Query<Proposal>()
group proposals by new { proposals.Job.Name, proposals.Job.Status}
into jobGrouping
select new {
Job = jobGrouping.Key.Name,
Status = jobGrouping.Key.Status,
TotalProposals = jobGrouping.Count()
};
Aber immer, wenn ich versuche, diese erhalte ich eine Ausnahme, wenn NHibernate tryes einen Ausdruck Baum zu bauen:
Ein Element mit dem gleichen Schlüssel wurde bereits hinzugefügt.
Wer weiß, ob es eine Möglichkeit gibt, dies mit NHibernate zu erreichen?
Danke, Ilan
+1 Ich habe das gleiche Problem –
https://nhibernate.jira.com/browse/NH-3027 ist relevant für Ihr (erstes) Problem - es bleibt ab NH 3.2 ungelöst –