以下は機能し、私が求めていたシンプルさを実現します:
public IEnumerable<Store> ListStores(Expression<Func<Store, string>> sort, bool desc, int page, int pageSize, out int totalRecords) { List<Store> stores = new List<Store>(); using (var context = new TectonicEntities()) { totalRecords = context.Stores.Count(); int skipRows = (page - 1) * pageSize; if (desc) stores = context.Stores.OrderByDescending(sort).Skip(skipRows).Take(pageSize).ToList(); else stores = context.Stores.OrderBy(sort).Skip(skipRows).Take(pageSize).ToList(); } return stores; }
プレ>私にとってそれを修正した主なことは、 Func ソートパラメーターを次のように変更することでした:
Expression<Func<Store, string>> sort
プレ>