NHibernate Abfrage über mehrere Tabellen hinweg

8

Ich verwende NHibernate und versuche herauszufinden, wie man eine Abfrage schreibt, die alle Namen meiner Entitäten durchsucht, und listet die Ergebnisse auf. Als ein einfaches Beispiel habe ich die folgenden Objekte;

%Vor%

Eventuell möchte ich eine Abfrage erstellen, zum Beispiel, welche und alle Tierbesitzer mit einem Namen zurückgibt, der "ted" enthält, oder Tiere mit einem Namen, der "ted" enthält.

Hier ist ein Beispiel für die SQL, die ich ausführen möchte:

%Vor%

Wenn ich dies unter Verwendung von Kriterien wie diesem tue:

%Vor%

Die folgende Abfrage wird generiert:

%Vor%

Wie kann ich meine Abfrage so anpassen, dass die .CreateCriteria ("Hund") und .CreateCriteria ("Katze") ein OR anstelle des AND generieren?

Danke für Ihre Hilfe.

    
Dai Bok 22.04.2010, 15:04
quelle

2 Antworten

5

Versuchen Sie es, es könnte funktionieren.

%Vor%     
YYFish 23.04.2010, 10:12
quelle
2

Sie müssen die beiden Kriterien mit Expression.Or (criteria1, criteria2) kombinieren

Mehr hier: Ссылка

Hmm Ich denke, es würde so aussehen (ein wenig aus BuggyDiggers Code geliehen)

%Vor%

Aber ich habe nicht bemerkt, dass du alles haben willst. In diesem Fall ist es wahrscheinlich der Weg zu gehen, diese Kriterien zur Disjunktion hinzuzufügen, wie BuggyDigger gezeigt hat.

    
AlexCuse 22.04.2010 15:18
quelle

Tags und Links