Essayer d'obtenir un OrderBy sur un IQueryable pour travailler, ne pas avoir beaucoup de chance.Aide avec générique LINQ OrderBy Lambda Expression
Voici ma méthode:
public ICollection<T> FindAll<T>(Expression<Func<T,bool>> predicate, Expression<Func<T,int>> orderingKey) where T : Post
{
return repository
.Find()
.Where(predicate)
.OfType<T>()
.OrderBy(orderingKey)
.ToPagedList();
}
La commande fonctionne si je fais ceci:
FindAll(p => p.PostName == "Foo", p => p.PostId);
Mais pas si je veux faire:
FindAll(p => p.PostName == "Foo", p => p.DateModified);
Il ne travail bien sûr, parce que j'ai déclaré l'expression T,int
, alors que l'expression ci-dessus est de type T,DateTime
Comment puis-je le déclarer afin que je puisse OrderBy any propriété de mon entité (Publier)?
Il s'agit de LINQ-Entities (Entity Framework 4.0).
Jetez un oeil à [cette réponse] [1] Vive [1]: http://stackoverflow.com/a/12920596/ 1139347 – joaopintocruz