ICriteria Restriction sur l'expression
-
26-10-2019 - |
Question
Comment doit écrire la requête suivante avec l'API ICriteria du NHibernate:
DetachedCriteria criteria = DetachedCriteria.For<Order>()
.Add(Restrictions.Eq("Property1 + Property2", confirmation.Ammount));
Ce que je dois est de comparer une expression (Propriété1 + Propriété2) à la valeur donnée (confirmation.Ammount).
J'utilise NHibernate 2.0 (je ne peux pas passer à la version plus récente au moment).
Merci
La solution
Option 1
.Add(Expression.Sql("(Property1 + Property2) = ?", confirmation.Ammount, NHibernateUtil.Int32));
option 2
écrire votre propre projection voir ici
.Add(Restrictions.Eq(new ArithmeticOperatorProjection(
"+", NHibernateUtil.Int32, Projections.Property("Property1"), Projections.Property("Property2")
)
)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow