Sto usando modelli qui menzionati http://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/implementing-the-repository-and-unit-of-work-patterns-in-an-asp-net-mvc-applicationdinamica Func <IQueryable <TEntity>, IOrderedQueryable <TEntity>> Espressione
e sto usando il metodo seguito per interrogare EF
public virtual IEnumerable<TEntity> Get(
Expression<Func<TEntity, bool>> filter = null,
Func<IQueryable<TEntity>, IOrderedQueryable<TEntity>> orderBy = null,
string includeProperties = "")
{
IQueryable<TEntity> query = dbSet;
if (filter != null)
{
query = query.Where(filter);
}
foreach (var includeProperty in includeProperties.Split
(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries))
{
query = query.Include(includeProperty);
}
if (orderBy != null)
{
return orderBy(query).ToList();
}
else
{
return query.ToList();
}
}
Ora voglio creare dinamiche Func<IQueryable<TEntity>, IOrderedQueryable<TEntity>>
espressione ordina i miei dati.
Io so solo il nome del campo come stringa e l'ordine di tipo (ascendente, discendente) come stringa (asc, decrescente)
Questa non è la forma usuale di un ordine-by; hai visto questo? http://stackoverflow.com/questions/41244/dynamic-linq-orderby –
@MarcGravell grazie, l'ho visto. Ma il tutorial di MS contiene questo codice, quindi sto cercando di scrivere un LINQ dinamico adatto per questo. In realtà penso di aver avuto successo, ma devo fare alcuni test e poi farti sapere. –