Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 16560 | Bulk Product 798b3079 | Electronics | $457.00 | 203 | ★ 1.7 | 19 | BULK-29ff118e |
| 16561 | Bulk Product 9217db0a | Electronics | $570.76 | 413 | ★ 2.3 | 16 | BULK-f7635e69 |
| 16562 | Bulk Product c33c086f | Electronics | $274.73 | 6 | ★ 2.6 | 16 | BULK-af041813 |
| 16563 | Bulk Product 33fd198d | Toys & Games | $647.93 | 164 | ★ 1.3 | 96 | BULK-d0ff0e48 |
| 16564 | Bulk Product ad43972a | Electronics | $803.81 | 354 | ★ 1.2 | 23 | BULK-c982ecd0 |
| 16565 | Bulk Product 76e47549 | Toys & Games | $1,009.25 | 322 | ★ 3.5 | 98 | BULK-d1cbf8c5 |
| 16566 | Bulk Product 8c30ee1a | Electronics | $68.83 | 59 | ★ 4.7 | 28 | BULK-31eed51f |
| 16567 | Bulk Product 62bc9db3 | Books | $729.33 | 279 | ★ 3.9 | 95 | BULK-35acd17a |
| 16568 | Bulk Product 1ea41afa | Electronics | $13.59 | 363 | ★ 3.3 | 51 | BULK-7fbacf55 |
| 16569 | Bulk Product 0cadd404 | Home & Garden | $845.30 | 152 | ★ 2.2 | 84 | BULK-1e9ff33e |
| 16570 | Bulk Product 98f7bcab | Books | $671.64 | 318 | ★ 0.6 | 90 | BULK-9532b247 |
| 16571 | Bulk Product 875b02b0 | Home & Garden | $10.40 | 232 | ★ 2.1 | 90 | BULK-b351c456 |
| 16572 | Bulk Product d91fa9f6 | Electronics | $35.47 | 28 | ★ 4.7 | 39 | BULK-a0f1b2ec |
| 16573 | Bulk Product 6c0f18eb | Electronics | $975.69 | 255 | ★ 1.3 | 8 | BULK-168a91b0 |
| 16574 | Bulk Product e032da77 | Toys & Games | $890.31 | 55 | ★ 0.7 | 25 | BULK-b8522af7 |
| 16575 | Bulk Product b5b01e2d | Toys & Games | $571.15 | 471 | ★ 4.9 | 99 | BULK-729e32ef |
| 16576 | Bulk Product 86bd806a | Sports & Outdoors | $511.68 | 405 | ★ 2.5 | 66 | BULK-00e75718 |
| 16577 | Bulk Product db759855 | Electronics | $942.17 | 299 | ★ 3.6 | 15 | BULK-0749d1c2 |
| 16578 | Bulk Product dc4b136f | Electronics | $254.16 | 165 | ★ 1.6 | 35 | BULK-a899e3f1 |
| 16579 | Bulk Product 2271ab0e | Toys & Games | $320.94 | 442 | ★ 3.6 | 97 | BULK-e7bd44eb |
| 16580 | Bulk Product 36aafadc | Electronics | $289.94 | 237 | ★ 4.3 | 50 | BULK-53a7403e |
| 16581 | Bulk Product a7b6a1b1 | Toys & Games | $74.53 | 336 | ★ 1.2 | 95 | BULK-4afe8b9f |
| 16582 | Bulk Product a3bef46b | Clothing | $768.16 | 152 | ★ 0.7 | 37 | BULK-16b32064 |
| 16583 | Bulk Product 061f1470 | Home & Garden | $808.70 | 15 | ★ 4.2 | 8 | BULK-6e9a46a8 |
| 16584 | Bulk Product 2329e07a | Sports & Outdoors | $353.17 | 102 | ★ 4.2 | 71 | BULK-9b1cd6f3 |
| 16585 | Bulk Product 31b5d923 | Electronics | $904.25 | 10 | ★ 1.0 | 38 | BULK-cc2d8155 |
| 16586 | Bulk Product 60766f43 | Sports & Outdoors | $642.35 | 320 | ★ 2.6 | 86 | BULK-412da98d |
| 16587 | Bulk Product 934eaec9 | Toys & Games | $992.73 | 466 | ★ 1.7 | 41 | BULK-255fc703 |
| 16588 | Bulk Product 5c445652 | Books | $482.25 | 426 | ★ 4.7 | 53 | BULK-b49055ce |
| 16589 | Bulk Product e9ad6757 | Sports & Outdoors | $682.98 | 141 | ★ 4.9 | 90 | BULK-99f19319 |
| 16590 | Bulk Product d5e4611f | Toys & Games | $943.73 | 90 | ★ 2.2 | 85 | BULK-b4170d36 |
| 16591 | Bulk Product c4c23d26 | Home & Garden | $238.10 | 52 | ★ 2.1 | 66 | BULK-01595cdb |
| 16592 | Bulk Product 0c266880 | Books | $87.15 | 328 | ★ 1.2 | 46 | BULK-1dd00d38 |
| 16593 | Bulk Product bfa1e259 | Sports & Outdoors | $995.96 | 396 | ★ 4.7 | 3 | BULK-cc7de934 |
| 16594 | Bulk Product 132d2d92 | Toys & Games | $55.87 | 420 | ★ 2.2 | 68 | BULK-89cc211d |
| 16595 | Bulk Product 3015e940 | Toys & Games | $923.61 | 208 | ★ 2.6 | 56 | BULK-360001f9 |
| 16596 | Bulk Product 294565a1 | Toys & Games | $558.63 | 310 | ★ 0.5 | 22 | BULK-6d6a70ec |
| 16597 | Bulk Product fc0c8b43 | Home & Garden | $634.65 | 275 | ★ 0.0 | 37 | BULK-d28b114c |
| 16598 | Bulk Product 2e49560c | Home & Garden | $45.38 | 456 | ★ 0.4 | 46 | BULK-270a6c80 |
| 16599 | Bulk Product 6d0881b8 | Books | $24.75 | 470 | ★ 0.6 | 6 | BULK-7fe34f6a |
| 16600 | Bulk Product c400e3f3 | Electronics | $973.42 | 408 | ★ 3.6 | 23 | BULK-73c12cc2 |
| 16601 | Bulk Product 240dc876 | Clothing | $498.12 | 383 | ★ 3.1 | 92 | BULK-ae9ea3ac |
| 16602 | Bulk Product a3047f41 | Sports & Outdoors | $534.98 | 381 | ★ 0.6 | 85 | BULK-22612e56 |
| 16603 | Bulk Product 784aa040 | Toys & Games | $126.01 | 116 | ★ 4.6 | 8 | BULK-07c98e3d |
| 16604 | Bulk Product e3e18010 | Electronics | $442.94 | 133 | ★ 3.3 | 46 | BULK-8d0c10d6 |
| 16605 | Bulk Product e3c17260 | Toys & Games | $903.44 | 282 | ★ 4.0 | 70 | BULK-67598059 |
| 16606 | Bulk Product 24bc2205 | Books | $931.76 | 497 | ★ 1.1 | 81 | BULK-204d4105 |
| 16607 | Bulk Product 67fdf6c7 | Books | $861.88 | 152 | ★ 0.8 | 55 | BULK-8fdd01d9 |
| 16608 | Bulk Product 60e35a98 | Books | $803.13 | 407 | ★ 3.5 | 89 | BULK-042285c1 |
| 16609 | Bulk Product 78bf1e49 | Home & Garden | $30.08 | 163 | ★ 0.6 | 35 | BULK-45b7a88b |
// 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
};
}