ho lottato con questo per un po ', e non riesco a capirlo ...Parzialmente popolano Collezione Bambino con NHibernate
Ho una classe di BlogPost
, che ha una collezione di Comments
e ognuno dei commenti ha un campo DatePosted
.
Che cosa devo fare è di query per un BlogPost
e tornare con una collezione carico parziale Comments
, dire tutti i commenti postati riguardanti l'1 agosto 2009.
Ho questa query:
BlogPost post = session.CreateCriteria<BlogPost>()
.Add(Restrictions.Eq("Id", 1))
.CreateAlias("Comments", "c")
.Add(Restrictions.Eq("c.DatePosted", new DateTime(2009, 8, 1)))
.UniqueResult<BlogPost>();
Quando eseguo questa query e controllo lo sql generato, esegue prima una query sulla tabella BlogPost
, unendosi alla tabella Comment
con la limitazione della data corretta in, quindi esegue una seconda query solo sulla tabella Comment
che restituisce tutto.
Il risultato è la raccolta Comments
della classe BlogPost
completamente riempita!
Cosa sto sbagliando?
Ho campioni di codice se qualcuno ha bisogno di maggiori informazioni ...!
NH non fa mai post-filtraggio. –