Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Entity Framework/Linq to SQL:Pomiń i weź

Następujące działania i zapewniają prostotę, której szukałem:

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;
}

Najważniejszą rzeczą, która mi to naprawiła, była zmiana parametru sortowania Func na:

Expression<Func<Store, string>> sort


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dlaczego CTE jest lepsze niż kursor / tabela pochodna / podzapytania / tabela tymczasowa itp.?

  2. Znaczenie klucza podstawowego do Microsoft SQL Server 2008

  3. Oddziel słowa według grup dla każdego wiersza w SQL

  4. IN Operator SQL

  5. Jak wysłać zapytanie do tabeli SQL i usunąć zduplikowane wiersze z zestawu wyników?