Bonjour,
J'ai un souci pour lier 3 tables ensemble correctement.
Voici mes tables :
BATIMENT (IdBatiment,LibelleBatiment, IdCommune, IdDepartement, LibelleRue) clé IdBatiment
RUE (IdCommune, IdDepartement, LibelleRue) clé sur 3 champs IdCommune, IdDepartement, LibelleRue
COMMUNE (IdCommune, IdDepartement, LibelleCommune) clé sur 2 champs IdCommune, IdDepartement
Donc, dans la table BATIMENT j'ai l'identifiant de la RUE
Dans la RUE j'ai l'identifiant de COMMUNE
J'arrive a les mapper assez correctement , pusque j'arrive à afficher dans une grille une liste de tous les batiments (LibelleBatiment, LibelleRue, LibelleCommune)
Le problème vient quand je veux trier sur le Libelle de Commune.
Le tri sur le libellé Rue marche bien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 ISession session = NHibernateHelper.GetCurrentSession(); ICriteria criteres = session.CreateCriteria(typeof(Batiment)); ICriteria critRue = criteres.CreateCriteria("Rue"); if (ordreTri == "ASC") critRue.AddOrder(Order.Asc("LibelleRue")); else critRue.AddOrder(Order.Desc("LibelleRue"));
j'aimerai faire pareil avec le libellé de Commune (donc un cran plus loin)
je pensais à qch de ce genre, mais ca fonctionne pas...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 ISession session = NHibernateHelper.GetCurrentSession(); ICriteria criteres = session.CreateCriteria(typeof(Batiment)); ICriteria critCommune = criteres.CreateCriteria("Rue").CreateCriteria("Commune"); if (ordreTri == "ASC") critCommune .AddOrder(Order.Asc("LibelleCommune")); else critCommune .AddOrder(Order.Desc("LibelleCommune"));
Merci d'avance si qqn a une idée
Partager