ホームページ > バックエンド開発 > C++ > Skip and Take を使用して LINQ to Objects にページネーションを実装するにはどうすればよいですか?

Skip and Take を使用して LINQ to Objects にページネーションを実装するにはどうすればよいですか?

Barbara Streisand
リリース: 2025-01-14 11:00:43
オリジナル
410 人が閲覧しました

How Can I Implement Pagination in LINQ to Objects Using Skip and Take?

LINQ to Objects のページネーション

LINQ クエリを使用してページングを実装します。Skip および Take 拡張メソッドを使用するだけで簡単に完了できます。解決策は以下で詳しく紹介します:

スキップとテイクを使用してページングを実装します

Skip メソッドは、結果セットの最初の N 要素をスキップし、残りの要素を返します。 Take メソッドは、結果セットの最初の N 要素を返し、残りの要素を破棄します。

SQL の TOP 関数をエミュレートするには、次のように Skip メソッドと Take メソッドを適用できます。

    ページごとに表示するオブジェクトの数を決定します (例:
  1. )。 pageSize = 10
  2. 表示するページ番号を決定します (例:
  3. )。 pageNumber = 3
  4. を使用して、スキップする最初の要素のインデックスを計算します。 offset = pageSize * (pageNumber - 1)
  5. メソッドを適用して、クエリ結果の最初の Skip 要素をスキップします。 offset
  6. メソッドを適用して、次の Take 要素を取得します。 pageSize

コード例

LINQ クエリ

がオブジェクトのリストを取得すると仮定すると、次のようにページネーションを実装できます。 queryResult

<code class="language-csharp">int pageSize = 10;
int pageNumber = 3;

var queryResultPage = queryResult
    .Skip(pageSize * (pageNumber - 1))
    .Take(pageSize);</code>
ログイン後にコピー
この例では、

は 1 から始まり、表示されるページ番号を表します。 pageNumber が 0 から始まる場合は、それに応じて式を調整する必要があります: pageNumberoffset = pageSize * pageNumber

その他のリソース

メソッドと Skip メソッドの詳細については、Microsoft のドキュメントを参照してください。Take

以上がSkip and Take を使用して LINQ to Objects にページネーションを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート