J'essaie d'écrire un critère NHibernate qui se joint et se restreint en même temps. Mon DB ressemble à ceci ...Critères de jointure et de restriction NHibernate
Cas ---> CustomerProducts < --- Clients Cas ---> CaseStatuses
Chaque cas est associé à un produit client (De nombreux cas à un produit).
Chaque client a un certain nombre de produits client (un client a de nombreux produits client).
Chaque cas a en plus un statut de cas (un cas à plusieurs cas).
Cela a été cartographié avec des fichiers XML et plusieurs à plusieurs résolution entre les cas et les clients (par le biais de produits client) a été résolu avec un jeux <> dans le sens cartographie CustomerProduct que l'entité CustomerProduct a des ensembles:
Les clients
Cas
Je puis DEVENEZ critères tapés « affaires ». Les critères que je dois appliquer sont ....
États IN [différents codes d'état]. Cela a été réalisé avec ....
critères.Add (Restrictions.In ("CaseStatus.CaseStatusId", statuses));
Maintenant, je dois sélectionner uniquement les cas pour un identifiant client spécifique. J'ai essayé ...
critères.Ajouter ("CustomerProduct.Customer.CustomerId", customerId);
Ce travail ne marche pas et NHibernate me dit qu'il ne peut pas résoudre le mappage CustomerProduct.Customer.CustomerId.
Case a la propriété d'un objet CustomerProduct.
CustomerProduct a la propriété d'un objet Client.
Le client a la propriété CustomerId.
Des idées pourquoi ça ne marchera pas?
Merci.
Fonctionne parfaitement! Merci beaucoup. – Remotec