2017-08-01 6 views
-4

J'utilise Entity Framework (premier code) comme ceci:IQueryable avec Entity Framework - ordre, où, sauter et prendre n'a pas d'effet

IQueryable<StammdatenEntityModel> query = dbSet; 

query.OrderByDescending(s => s.CreateDateTime); 

query.Where(s => s.Deleted == false); 

if(!String.IsNullOrEmpty(keyword)) 
{ 
    query.Where(s => s.SerialNumber.Contains(keyword)); //simplified for SO 
} 

query.Skip(skip); 
query.Take(take); 

Cependant, le OrderByDescending, Where, Skip et Take ne le font pas avoir un effet.

Répondre

2

Vous n'utilisez pas le résultat d'une requête

IQueryable<StammdatenEntityModel> query = dbSet; 
query = query.OrderByDescending(s => s.CreateDateTime); 
query = query.Where(s => s.Deleted == false); 
if(!String.IsNullOrEmpty(keyword)) 
{ 
    query = query.Where(s => s.SerialNumber.Contains(keyword)); //simplified for SO 
} 
query = query.Skip(skip); 
query = query.Take(take); 
+0

Bon sang. Pensait que c'était un appel par référence ... – mosquito87