J'ai deux entités: Client et AccountPlan, qui ont une relation de 1 à 0..1. Je voudrais récupérer mes clients, commandés d'abord par les clients qui ont un compte, puis par les clients qui n'en ont pas. Lorsque je tente la Linq suivante pour interroger Nhibernate:Construire une requête NHibernate qui commande par une condition booléenne
return NHibernateSession.Current.Query<Client>()
.Where(x => x.SalesRepId == id)
.OrderBy(x => x.AccountPlan == null);
Je reçois un QuerySyntaxException avec le message suivant:.
{ "exception de type 'Antlr.Runtime.NoViableAltException' a été jeté [. OrderBy (.Where (NHibernate.Linq.NhQueryable`1 [FIS.AccountManagement.Core.Domain.Client], Citer ((x,) => (Egal (x.SalesRepId, p1))),, Citation ((x,) => (Equal (x.AccountPlan,))),)] "}
Voici la relation de correspondance entre les deux entités, si c'est important:
public ClientMap()
{
HasOne(x => x.AccountPlan).PropertyRef(r => r.Client);
}
public AccountPlanMap()
{
DynamicInsert();
References(x => x.Client, "EntityID");
}
Est-ce que quelqu'un sait d'une requête de l'une des API myriade de NHibernate qui accomplira ce que je veux? Merci d'avance.
Ingenious. Je vous remercie! – Vish