[英]EF Generic Repository Multiple Includes and OrderBy Call
我已经查看了EF通用存储库的许多示例。我找不到OrderBy
和Include
的实例。我不知道如何在控制器中填充问题点(orderBy:?,includes:?)
。我在等你的帮助
资料库
public List<T> Get(Expression<Func<T, bool>> filter = null, Func<IQueryable<T>, IOrderedQueryable<T>> orderBy = null, params Expression<Func<T, object>>[] includes)
{
E_ComDBContext db = new E_ComDBContext();
DbSet<T> dbSet;
dbSet = db.Set<T>();
IQueryable<T> query = dbSet;
foreach (Expression<Func<T, object>> include in includes)
query = query.Include(include);
//if (select != null)
// query = query.Select(select);
if (filter != null)
query = query.Where(filter);
if (orderBy != null)
query = orderBy(query);
return query.ToList();
}
控制器
public JsonResult List()
{
Repository<Product> _repository = new Repository<Product>();
var list = _repository.Get(x=>x.Price>10,orderBy:?,includes:?);
return Json(list, JsonRequestBehavior.AllowGet);
}
我会尝试一下。
var list = _repository.Get(filter: x => x.Price > 10, orderBy: x=> x.OrderBy(y => y.Price), x => x.Location, x=> x.Brand);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.