LINQ to Objects のページネーション
LINQ クエリを使用してページングを実装します。Skip
および Take
拡張メソッドを使用するだけで簡単に完了できます。解決策は以下で詳しく紹介します:
スキップとテイクを使用してページングを実装します
Skip
メソッドは、結果セットの最初の N 要素をスキップし、残りの要素を返します。 Take
メソッドは、結果セットの最初の N 要素を返し、残りの要素を破棄します。
SQL の TOP
関数をエミュレートするには、次のように Skip
メソッドと Take
メソッドを適用できます。
pageSize = 10
pageNumber = 3
offset = pageSize * (pageNumber - 1)
Skip
要素をスキップします。 offset
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 から始まる場合は、それに応じて式を調整する必要があります: pageNumber
。 offset = pageSize * pageNumber
その他のリソース
メソッドと Skip
メソッドの詳細については、Microsoft のドキュメントを参照してください。Take
以上がSkip and Take を使用して LINQ to Objects にページネーションを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。