Frage

Wie sollte die folgende Abfrage mit der Icriiteria -API des Nhibernate geschrieben werden:

DetachedCriteria criteria = DetachedCriteria.For<Order>()
    .Add(Restrictions.Eq("Property1 + Property2", confirmation.Ammount));

Ich brauche einen Ausdruck (Eigenschaft1 + Eigenschaft2) mit dem angegebenen Wert (Bestätigung.AMMOUNT).

Ich verwende NhiberNate 2.0 (ich kann momentan nicht zur neueren Version wechseln).

Vielen Dank

War es hilfreich?

Lösung

Option 1

.Add(Expression.Sql("(Property1 + Property2) = ?", confirmation.Ammount, NHibernateUtil.Int32));

Option 2

Schreiben Sie Ihre eigene Projektion siehe hier

.Add(Restrictions.Eq(new ArithmeticOperatorProjection(
    "+", NHibernateUtil.Int32, Projections.Property("Property1"), Projections.Property("Property2")
    )
)
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top