Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 23410 | Bulk Product c236eab7 | Home & Garden | $977.63 | 183 | ★ 3.9 | 73 | BULK-0b261324 |
| 23411 | Bulk Product 84446e94 | Toys & Games | $326.83 | 262 | ★ 0.9 | 91 | BULK-52ea16c0 |
| 23412 | Bulk Product 5c8db6fa | Home & Garden | $339.90 | 20 | ★ 4.6 | 89 | BULK-63348af0 |
| 23413 | Bulk Product 379b45b1 | Books | $979.92 | 332 | ★ 0.3 | 25 | BULK-b36b1ac0 |
| 23414 | Bulk Product 3795fd45 | Sports & Outdoors | $141.30 | 38 | ★ 2.8 | 17 | BULK-17ad8d7d |
| 23415 | Bulk Product b9482776 | Clothing | $682.68 | 344 | ★ 3.3 | 52 | BULK-a8e7e665 |
| 23416 | Bulk Product 9ae2c664 | Toys & Games | $1,000.78 | 82 | ★ 0.1 | 32 | BULK-a38d4a57 |
| 23417 | Bulk Product 0d3210b9 | Sports & Outdoors | $429.15 | 97 | ★ 4.3 | 76 | BULK-c081ff8f |
| 23418 | Bulk Product 80be542d | Clothing | $72.81 | 104 | ★ 1.3 | 58 | BULK-f478a9fb |
| 23419 | Bulk Product 8fb49ea6 | Sports & Outdoors | $888.79 | 362 | ★ 2.6 | 34 | BULK-15b593d3 |
| 23420 | Bulk Product 55da3e38 | Electronics | $723.74 | 24 | ★ 0.2 | 15 | BULK-41553793 |
| 23421 | Bulk Product 5b7de046 | Sports & Outdoors | $36.62 | 8 | ★ 0.2 | 30 | BULK-c717416f |
| 23422 | Bulk Product 62816dc9 | Toys & Games | $110.23 | 346 | ★ 1.3 | 27 | BULK-b8941ed0 |
| 23423 | Bulk Product c7760e69 | Clothing | $559.34 | 167 | ★ 4.9 | 98 | BULK-bcebe533 |
| 23424 | Bulk Product 1faff3bd | Books | $101.15 | 483 | ★ 0.6 | 86 | BULK-f05a9cc5 |
| 23425 | Bulk Product 3df37ce1 | Electronics | $218.27 | 142 | ★ 1.1 | 19 | BULK-70a2c49e |
| 23426 | Bulk Product b5ab4dcb | Books | $271.29 | 35 | ★ 1.1 | 18 | BULK-5a32be4f |
| 23427 | Bulk Product b3744774 | Clothing | $160.98 | 486 | ★ 4.3 | 87 | BULK-6525e89f |
| 23428 | Bulk Product d7ec6dbf | Home & Garden | $943.90 | 479 | ★ 3.2 | 70 | BULK-e3159f1d |
| 23429 | Bulk Product 8d8b39dc | Electronics | $749.48 | 424 | ★ 3.5 | 97 | BULK-6d548dd4 |
| 23430 | Bulk Product f9cc85e2 | Books | $729.36 | 474 | ★ 4.3 | 24 | BULK-6ffb72f3 |
| 23431 | Bulk Product a74222c0 | Home & Garden | $184.73 | 353 | ★ 4.9 | 28 | BULK-9615051c |
| 23432 | Bulk Product b32619ea | Books | $285.65 | 489 | ★ 4.5 | 88 | BULK-1acf7fac |
| 23433 | Bulk Product 1e730d63 | Home & Garden | $775.10 | 25 | ★ 4.5 | 30 | BULK-0d17d7c0 |
| 23434 | Bulk Product 70326b85 | Toys & Games | $775.30 | 69 | ★ 2.9 | 88 | BULK-8fc9520a |
| 23435 | Bulk Product e5baf2a0 | Clothing | $662.17 | 350 | ★ 1.0 | 9 | BULK-e7b84cae |
| 23436 | Bulk Product 1b161fb7 | Sports & Outdoors | $547.51 | 205 | ★ 4.5 | 81 | BULK-76d4a596 |
| 23437 | Bulk Product 013be468 | Sports & Outdoors | $303.13 | 466 | ★ 4.3 | 74 | BULK-71fd81ba |
| 23438 | Bulk Product 5fc6c5c9 | Electronics | $345.78 | 497 | ★ 2.3 | 4 | BULK-ea5dea3f |
| 23439 | Bulk Product fa39da86 | Electronics | $240.92 | 408 | ★ 0.8 | 8 | BULK-1ac5a305 |
| 23440 | Bulk Product b548d7d7 | Electronics | $118.63 | 420 | ★ 1.5 | 10 | BULK-dd04fbb0 |
| 23441 | Bulk Product 8a0a66a6 | Sports & Outdoors | $241.02 | 193 | ★ 3.5 | 76 | BULK-120cb0a7 |
| 23442 | Bulk Product 0480b618 | Books | $960.57 | 169 | ★ 2.7 | 74 | BULK-217498a0 |
| 23443 | Bulk Product 3b756b26 | Home & Garden | $915.39 | 346 | ★ 3.0 | 99 | BULK-23e25b9e |
| 23444 | Bulk Product 68dcb27c | Home & Garden | $334.41 | 375 | ★ 3.9 | 43 | BULK-2d5599ac |
| 23445 | Bulk Product ecb161b5 | Clothing | $431.27 | 433 | ★ 2.0 | 61 | BULK-cb98e0a8 |
| 23446 | Bulk Product 01c1cb7a | Toys & Games | $537.16 | 314 | ★ 1.9 | 2 | BULK-8cfec9b9 |
| 23447 | Bulk Product ddcd4187 | Electronics | $589.37 | 81 | ★ 4.7 | 66 | BULK-a12ca376 |
| 23448 | Bulk Product 522525f0 | Toys & Games | $408.48 | 386 | ★ 1.1 | 3 | BULK-1923cc4b |
| 23449 | Bulk Product abb1c9c4 | Electronics | $264.48 | 290 | ★ 0.5 | 50 | BULK-f9303ff3 |
| 23450 | Bulk Product d7dacd81 | Books | $230.42 | 205 | ★ 4.2 | 14 | BULK-c110713d |
| 23451 | Bulk Product 34b6505b | Books | $488.00 | 73 | ★ 3.0 | 93 | BULK-4545e5db |
| 23452 | Bulk Product dceb3145 | Books | $819.51 | 34 | ★ 2.7 | 75 | BULK-d561bd74 |
| 23453 | Bulk Product 9f122b59 | Toys & Games | $603.59 | 360 | ★ 3.6 | 99 | BULK-be35c6a3 |
| 23454 | Bulk Product 968cd355 | Toys & Games | $639.19 | 272 | ★ 4.0 | 37 | BULK-d625f948 |
| 23455 | Bulk Product c27fb8ec | Books | $479.73 | 336 | ★ 0.8 | 82 | BULK-a1011663 |
| 23456 | Bulk Product f73349d4 | Books | $242.44 | 169 | ★ 3.5 | 14 | BULK-0e7ccd4b |
| 23457 | Bulk Product 8fb4c971 | Electronics | $684.02 | 32 | ★ 0.3 | 65 | BULK-994ba0d8 |
| 23458 | Bulk Product d2e9cfcb | Clothing | $933.25 | 379 | ★ 2.4 | 46 | BULK-4398c1f3 |
| 23459 | Bulk Product 7d7d3049 | Toys & Games | $608.74 | 180 | ★ 2.7 | 62 | BULK-b02f8301 |
// 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
};
}