NHibernate-Kriterien-API - Wie füge ich eine Klausel hinzu, um ein Datum mit einem anderen Datum minus einem Wert zu vergleichen

8

Ich versuche, ein Kriterienobjekt mit NHibernate zu erstellen, das date1 mit date2 minus einem Wert vergleicht. In Sql Server würde ich das tun:

Wählen Sie * aus der Tabelle, wo date1 & lt; DateAdd (Tag, 2, Datum2)

Kann jemand sagen, wie ich das in NHibernate machen würde?

Prost

BEARBEITEN

Ich hätte dies früher angeben sollen, ich möchte herausfinden, wie dies mit der Kriterien-API funktioniert.

Auch Datum1 und Datum2 sind Spalten in der Tabelle, daher kenne ich deren Wert nicht, bevor ich die Abfrage

ausführe     
Phil Hale 21.07.2010, 18:53
quelle

3 Antworten

8

Nun, genau so: -)

HQL:

%Vor%

SQL:

%Vor%

Kriterien:

%Vor%

In allen Fällen führt .List() die Abfrage aus und gibt eine Liste von Objekten des angegebenen Typs zurück.

    
Diego Mijelshon 21.07.2010, 20:14
quelle
0

Angesichts der minimalen Menge an Informationen, hier ist meine Schätzung:

%Vor%     
rebelliard 21.07.2010 20:07
quelle
0

Um dies zu tun, müssen Sie wahrscheinlich einen benutzerdefinierten Dialekt erstellen registriert die Dateadd-Funktion und verwendet die SqlFunction-Projektion um die Critiera-Abfrage durchzuführen.

    
DanP 22.07.2010 15:36
quelle

Tags und Links