Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 13160 | Bulk Product 908dbdf5 | Books | $999.75 | 169 | ★ 3.5 | 33 | BULK-1d5bedcf |
| 13161 | Bulk Product 8438e151 | Books | $528.36 | 487 | ★ 1.9 | 46 | BULK-d9e4f562 |
| 13162 | Bulk Product 468b948d | Sports & Outdoors | $76.30 | 438 | ★ 4.0 | 58 | BULK-cf5de53e |
| 13163 | Bulk Product c6908ce6 | Clothing | $396.36 | 336 | ★ 1.4 | 17 | BULK-b0970a03 |
| 13164 | Bulk Product f932d2f3 | Sports & Outdoors | $844.91 | 486 | ★ 2.7 | 88 | BULK-e2b97cf0 |
| 13165 | Bulk Product 36e9452b | Electronics | $732.19 | 248 | ★ 0.9 | 90 | BULK-feb84d41 |
| 13166 | Bulk Product 6e954793 | Electronics | $656.56 | 161 | ★ 5.0 | 29 | BULK-c1c36e3b |
| 13167 | Bulk Product 42dfee55 | Electronics | $701.61 | 43 | ★ 4.9 | 88 | BULK-a33daf19 |
| 13168 | Bulk Product 1df13faf | Sports & Outdoors | $54.96 | 301 | ★ 4.8 | 50 | BULK-4efd2cf8 |
| 13169 | Bulk Product 50de5bf7 | Home & Garden | $589.57 | 325 | ★ 3.8 | 15 | BULK-66c6bd00 |
| 13170 | Bulk Product d599be01 | Home & Garden | $13.68 | 395 | ★ 4.8 | 90 | BULK-74fc9bc8 |
| 13171 | Bulk Product 10578918 | Books | $416.54 | 291 | ★ 1.3 | 84 | BULK-8357f326 |
| 13172 | Bulk Product e61c4c65 | Toys & Games | $909.18 | 100 | ★ 2.6 | 94 | BULK-c2345abd |
| 13173 | Bulk Product 3307955c | Electronics | $239.67 | 318 | ★ 0.4 | 58 | BULK-dd868109 |
| 13174 | Bulk Product d95e5378 | Electronics | $112.75 | 351 | ★ 0.5 | 45 | BULK-893bc262 |
| 13175 | Bulk Product 1a0259c3 | Electronics | $48.35 | 392 | ★ 1.9 | 22 | BULK-ddbab937 |
| 13176 | Bulk Product 04742c33 | Books | $311.71 | 187 | ★ 0.4 | 38 | BULK-0790863b |
| 13177 | Bulk Product ae4d6f82 | Clothing | $683.42 | 261 | ★ 4.4 | 39 | BULK-29570f72 |
| 13178 | Bulk Product 2e6117b4 | Clothing | $920.68 | 459 | ★ 0.4 | 60 | BULK-e1419189 |
| 13179 | Bulk Product 9b26f9e9 | Sports & Outdoors | $562.93 | 307 | ★ 1.7 | 77 | BULK-cbcaa6e0 |
| 13180 | Bulk Product 67f11eb8 | Electronics | $644.31 | 188 | ★ 1.8 | 21 | BULK-7822e8a7 |
| 13181 | Bulk Product 390d3fe7 | Clothing | $932.08 | 492 | ★ 3.6 | 91 | BULK-db724a78 |
| 13182 | Bulk Product 631f49e7 | Toys & Games | $514.23 | 330 | ★ 4.6 | 44 | BULK-e31386da |
| 13183 | Bulk Product c3cc2a5a | Home & Garden | $326.73 | 103 | ★ 0.7 | 12 | BULK-a46f8bfa |
| 13184 | Bulk Product bd6e3644 | Clothing | $407.40 | 40 | ★ 1.1 | 73 | BULK-6bb70868 |
| 13185 | Bulk Product 540b18fb | Home & Garden | $675.82 | 211 | ★ 3.4 | 26 | BULK-82aff00d |
| 13186 | Bulk Product e977b35c | Clothing | $251.34 | 332 | ★ 4.4 | 62 | BULK-f0b52923 |
| 13187 | Bulk Product 51ad301f | Electronics | $509.85 | 344 | ★ 1.4 | 16 | BULK-0f888a66 |
| 13188 | Bulk Product cf58038f | Sports & Outdoors | $286.85 | 436 | ★ 3.8 | 61 | BULK-2f3f6a90 |
| 13189 | Bulk Product 1ca64b12 | Home & Garden | $563.02 | 231 | ★ 3.0 | 78 | BULK-f0c0a59c |
| 13190 | Bulk Product 8d3a60be | Clothing | $155.50 | 418 | ★ 4.9 | 92 | BULK-684e97c1 |
| 13191 | Bulk Product b9333d38 | Home & Garden | $1,007.34 | 246 | ★ 1.4 | 82 | BULK-63ebb6ca |
| 13192 | Bulk Product 1eee15cf | Clothing | $581.32 | 224 | ★ 2.0 | 38 | BULK-39b780fe |
| 13193 | Bulk Product 086a517c | Clothing | $44.82 | 271 | ★ 4.5 | 9 | BULK-8eee2036 |
| 13194 | Bulk Product 51242bdb | Clothing | $855.22 | 377 | ★ 1.5 | 33 | BULK-c7338239 |
| 13195 | Bulk Product 7cd85ed0 | Home & Garden | $362.61 | 353 | ★ 2.2 | 3 | BULK-1b481ba0 |
| 13196 | Bulk Product 85f740fb | Toys & Games | $78.42 | 337 | ★ 0.8 | 92 | BULK-e701c0ec |
| 13197 | Bulk Product a187584e | Electronics | $527.29 | 273 | ★ 1.3 | 82 | BULK-9f3b5aac |
| 13198 | Bulk Product 8223413a | Home & Garden | $598.15 | 280 | ★ 4.2 | 81 | BULK-14fbbd98 |
| 13199 | Bulk Product acfe9820 | Electronics | $943.60 | 8 | ★ 3.3 | 95 | BULK-4f3ad121 |
| 13200 | Bulk Product aec761a3 | Sports & Outdoors | $582.70 | 450 | ★ 1.9 | 37 | BULK-a6aa0730 |
| 13201 | Bulk Product 64feb5f2 | Clothing | $101.83 | 351 | ★ 0.9 | 36 | BULK-e8f9ee27 |
| 13202 | Bulk Product 12c301c7 | Electronics | $714.15 | 72 | ★ 2.6 | 96 | BULK-8577d4da |
| 13203 | Bulk Product 32d97bd1 | Electronics | $966.44 | 469 | ★ 4.0 | 12 | BULK-1dda8f3d |
| 13204 | Bulk Product 23c2c6d7 | Electronics | $673.07 | 486 | ★ 0.1 | 41 | BULK-555ed7c8 |
| 13205 | Bulk Product 30e70063 | Electronics | $338.96 | 402 | ★ 3.8 | 88 | BULK-292be19f |
| 13206 | Bulk Product 0f9cd3a2 | Electronics | $974.67 | 499 | ★ 4.0 | 55 | BULK-30b56346 |
| 13207 | Bulk Product de4f0d7f | Books | $874.42 | 52 | ★ 4.5 | 50 | BULK-10ee8a02 |
| 13208 | Bulk Product ea63ec44 | Electronics | $342.80 | 225 | ★ 2.2 | 6 | BULK-b5e4e808 |
| 13209 | Bulk Product f65acffd | Home & Garden | $838.53 | 129 | ★ 3.1 | 60 | BULK-35f7d207 |
// Efficient pagination with Skip and Take
public async Task<PaginatedResult<DemoProduct>> GetPaginatedProductsAsync(int page, int pageSize)
{
// Get total count (cached if possible)
var totalCount = await _context.DemoProducts.CountAsync(p => p.IsActive);
// Get page of results
var items = await _context.DemoProducts
.Where(p => p.IsActive)
.OrderBy(p => p.Id) // Important: Must have ORDER BY for consistent paging
.Skip((page - 1) * pageSize) // OFFSET in SQL
.Take(pageSize) // FETCH NEXT in SQL
.AsNoTracking() // No tracking needed for read-only
.ToListAsync();
return new PaginatedResult<DemoProduct>
{
Items = items,
TotalCount = totalCount,
Page = page,
PageSize = pageSize
};
}