2012-11-06 7 views
0

Comment puis-je ajouter une projection à ce code? J'essaie de trier mes résultats en fonction de la date de création ou de la dernière mise à jour.Ajouter une projection à la conjonction

var c = new Conjunction(); 
    c.Add(Restrictions.Where<InstructionTask>(x => x.IsOpen == _setDefaultStatusIfNotFound(status))); 

// erreur l'ajout de cette projection:

if (string.IsNullOrEmpty(sort) || sort.Equals("created", StringComparison.OrdinalIgnoreCase)) 
     c.Add(Projections.Property<InstructionTask>(x => x.DateCreated)); 

Je passe dans mon Conjuction à une autre méthode qui gère la récupération des tâches à savoir var tasks = GetCollaboratedTasks(c);

Répondre

0

A est conjuction juste un groupe de les filtres qui seront associés ensemble. Ce n'est pas lié à la projection ou au tri. Vous devez le coller dans un DetachedCriteria ou ICriteria.

0

Pour trier vos résultats par la propriété DateCreated utilisation:

criteria.AddOrder(Order.Asc(Projections.Property<InstructionTask>(x => x.DateCreated));

Comme l'a dit Oskar, un Conjonction ne peut être utilisé pour appliquer des filtres.

Questions connexes