Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 13560 | Bulk Product f9d835ff | Books | $857.86 | 464 | ★ 3.6 | 82 | BULK-de2e4a69 |
| 13561 | Bulk Product 498591d2 | Toys & Games | $163.08 | 173 | ★ 4.1 | 65 | BULK-aa13eadf |
| 13562 | Bulk Product 00bd861e | Sports & Outdoors | $345.19 | 119 | ★ 1.2 | 57 | BULK-c839d744 |
| 13563 | Bulk Product d7d7a5f0 | Sports & Outdoors | $45.84 | 180 | ★ 4.6 | 13 | BULK-026f2ff5 |
| 13564 | Bulk Product bce91e7a | Electronics | $423.92 | 80 | ★ 4.3 | 21 | BULK-838d87c6 |
| 13565 | Bulk Product 7385c6c6 | Home & Garden | $248.13 | 457 | ★ 1.3 | 51 | BULK-d7515b23 |
| 13566 | Bulk Product f1023a94 | Home & Garden | $511.70 | 313 | ★ 1.4 | 35 | BULK-9c252ed8 |
| 13567 | Bulk Product de6954e9 | Electronics | $923.31 | 396 | ★ 3.5 | 26 | BULK-8c1ebfd1 |
| 13568 | Bulk Product 887edae7 | Toys & Games | $336.40 | 266 | ★ 0.4 | 70 | BULK-fbbbbc9a |
| 13569 | Bulk Product 3bb75a5e | Books | $22.30 | 309 | ★ 3.9 | 77 | BULK-3cffa80c |
| 13570 | Bulk Product cf5921eb | Books | $881.61 | 172 | ★ 1.6 | 93 | BULK-2643dba6 |
| 13571 | Bulk Product bf514055 | Toys & Games | $852.77 | 247 | ★ 2.5 | 11 | BULK-34d4dbaf |
| 13572 | Bulk Product 6767e191 | Clothing | $543.46 | 377 | ★ 1.8 | 39 | BULK-c8d226db |
| 13573 | Bulk Product 0a85facc | Home & Garden | $709.43 | 400 | ★ 4.5 | 31 | BULK-53299745 |
| 13574 | Bulk Product 0e79367b | Toys & Games | $878.95 | 101 | ★ 3.1 | 33 | BULK-52fdac74 |
| 13575 | Bulk Product 264bffe1 | Electronics | $461.91 | 205 | ★ 4.2 | 41 | BULK-edee062b |
| 13576 | Bulk Product 6deeee8d | Sports & Outdoors | $352.18 | 41 | ★ 3.5 | 88 | BULK-51a4b4ff |
| 13577 | Bulk Product 915d4843 | Books | $175.98 | 211 | ★ 3.7 | 0 | BULK-ce9ec338 |
| 13578 | Bulk Product e91c8fd5 | Toys & Games | $282.37 | 9 | ★ 2.1 | 45 | BULK-581f58fd |
| 13579 | Bulk Product 84be2cd7 | Books | $905.52 | 322 | ★ 0.3 | 67 | BULK-7afd0ed3 |
| 13580 | Bulk Product 2418ba2c | Home & Garden | $416.46 | 396 | ★ 3.3 | 78 | BULK-164560f6 |
| 13581 | Bulk Product e508dfee | Books | $447.90 | 6 | ★ 3.9 | 38 | BULK-572468f2 |
| 13582 | Bulk Product 0dca1aba | Electronics | $133.48 | 430 | ★ 1.2 | 86 | BULK-e80ce61a |
| 13583 | Bulk Product e20b67c5 | Toys & Games | $263.48 | 489 | ★ 3.5 | 66 | BULK-a40025f4 |
| 13584 | Bulk Product 4179bd1d | Clothing | $836.88 | 143 | ★ 2.4 | 50 | BULK-a4af75c0 |
| 13585 | Bulk Product eef493bb | Books | $816.15 | 404 | ★ 4.0 | 33 | BULK-3ea35186 |
| 13586 | Bulk Product 24ccafdf | Home & Garden | $363.20 | 180 | ★ 3.3 | 85 | BULK-88c9e318 |
| 13587 | Bulk Product 66170d69 | Toys & Games | $125.13 | 303 | ★ 2.6 | 71 | BULK-6755a035 |
| 13588 | Bulk Product 819d271a | Sports & Outdoors | $509.78 | 469 | ★ 0.8 | 38 | BULK-b6fa9ea0 |
| 13589 | Bulk Product af107017 | Clothing | $144.81 | 0 | ★ 4.1 | 37 | BULK-5b319177 |
| 13590 | Bulk Product 68f6aed0 | Books | $613.24 | 246 | ★ 0.5 | 14 | BULK-960ffabc |
| 13591 | Bulk Product 15a26056 | Home & Garden | $647.56 | 320 | ★ 1.7 | 35 | BULK-0f870d63 |
| 13592 | Bulk Product ceb12a7a | Sports & Outdoors | $214.10 | 307 | ★ 3.8 | 48 | BULK-f4d7829f |
| 13593 | Bulk Product 83f9648a | Clothing | $117.67 | 77 | ★ 0.1 | 61 | BULK-8057d7f5 |
| 13594 | Bulk Product 9e6bf01f | Home & Garden | $455.83 | 74 | ★ 2.7 | 63 | BULK-de21d1db |
| 13595 | Bulk Product 2c86950b | Books | $811.64 | 438 | ★ 4.8 | 84 | BULK-835d6e88 |
| 13596 | Bulk Product 27e1cc2f | Home & Garden | $650.47 | 308 | ★ 1.1 | 28 | BULK-75b372bc |
| 13597 | Bulk Product 787bd53c | Toys & Games | $53.58 | 1 | ★ 1.2 | 86 | BULK-2dba53c5 |
| 13598 | Bulk Product fd0c45c7 | Books | $91.46 | 404 | ★ 0.1 | 2 | BULK-d68e9b34 |
| 13599 | Bulk Product abdada8a | Toys & Games | $550.36 | 392 | ★ 1.0 | 2 | BULK-cc6372e0 |
| 13600 | Bulk Product 7ca6756d | Sports & Outdoors | $312.65 | 38 | ★ 2.9 | 47 | BULK-cacd0e46 |
| 13601 | Bulk Product a768f29a | Toys & Games | $403.42 | 84 | ★ 1.8 | 78 | BULK-eee5cab2 |
| 13602 | Bulk Product b9318ece | Toys & Games | $866.10 | 302 | ★ 3.9 | 34 | BULK-15bf49c6 |
| 13603 | Bulk Product dac0146a | Clothing | $843.01 | 386 | ★ 4.9 | 4 | BULK-7bdc455e |
| 13604 | Bulk Product 8f06a0b4 | Home & Garden | $293.37 | 172 | ★ 2.9 | 6 | BULK-160ade73 |
| 13605 | Bulk Product 183807ac | Sports & Outdoors | $386.47 | 342 | ★ 2.4 | 77 | BULK-07ac6427 |
| 13606 | Bulk Product 1c4acd7a | Sports & Outdoors | $83.23 | 18 | ★ 0.6 | 84 | BULK-ac593311 |
| 13607 | Bulk Product b594d9a7 | Books | $162.27 | 213 | ★ 4.4 | 31 | BULK-7bb65c30 |
| 13608 | Bulk Product 8ede734b | Electronics | $686.91 | 396 | ★ 4.7 | 26 | BULK-8393dfde |
| 13609 | Bulk Product 73269c1a | Books | $75.70 | 180 | ★ 3.0 | 4 | BULK-cb358d6c |
// 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
};
}