sql >> データベース >  >> RDS >> Sqlserver

Entity Framework/Linq to SQL:スキップ &テイク

    以下は機能し、私が求めていたシンプルさを実現します:

    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
      

    1. MariaDBテンポラルテーブルとは何ですか?

    2. MySQLを複数のテーブルに挿入(リレーショナル)

    3. ウェビナー:Postgres12の新機能[フォローアップ]

    4. テーブル変数は1つの値のみで埋められます