IQueryable コレクションで並べ替えを行い、アイテムをフェッチします。<a>
私のページには、クリックしてコレクションの前のアイテムと次のアイテムに移動するためのリンクもいくつかあります。
ID はシーケンシャルではないため、単純な算術演算だけでは ID に到達できません。
レコードの位置を指定して、IQueryable から前の項目と次の項目を取得するにはどうすればよいですか?
IQueryable コレクションで並べ替えを行い、アイテムをフェッチします。<a>
私のページには、クリックしてコレクションの前のアイテムと次のアイテムに移動するためのリンクもいくつかあります。
ID はシーケンシャルではないため、単純な算術演算だけでは ID に到達できません。
レコードの位置を指定して、IQueryable から前の項目と次の項目を取得するにはどうすればよいですか?
と を使用Take()
しSkip()
て、ページング システムを実装します。ID が連続している必要はありません。クエリによって返された順序でオブジェクトを返すだけです。
var itemsPerPage = 10;
var pageNumber = 2; // Say it starts from 1
var values = query.Skip((pageNumber - 1) * itemsPerPage).Take(itemsPerPage);
LinkedListを使用できます。
LinkedList ノードは、前および次の兄弟の呼び出しをサポートします。LinkedList のコンストラクターは IEnumerable を受け取るので、これを簡単に実装できるはずです。