Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 7960 | Bulk Product cc984e67 | Toys & Games | $82.25 | 335 | ★ 2.5 | 27 | BULK-0720b38c |
| 7961 | Bulk Product 2a60ba83 | Clothing | $610.25 | 361 | ★ 5.0 | 78 | BULK-482ec2c5 |
| 7962 | Bulk Product da8db9c9 | Books | $245.79 | 347 | ★ 4.9 | 20 | BULK-1c642cc7 |
| 7963 | Bulk Product d4099c82 | Toys & Games | $340.07 | 43 | ★ 4.3 | 24 | BULK-2dcdc164 |
| 7964 | Bulk Product d56a22ca | Books | $683.81 | 56 | ★ 3.7 | 49 | BULK-314d4bbd |
| 7965 | Bulk Product ed6dc6d0 | Home & Garden | $539.14 | 190 | ★ 5.0 | 20 | BULK-44f9e48c |
| 7966 | Bulk Product f9e190bf | Sports & Outdoors | $409.81 | 29 | ★ 4.6 | 38 | BULK-26e070a0 |
| 7967 | Bulk Product 36dc36f3 | Electronics | $761.82 | 305 | ★ 0.6 | 52 | BULK-9fae5e51 |
| 7968 | Bulk Product 34bde415 | Clothing | $883.90 | 48 | ★ 0.7 | 0 | BULK-2f5bfb82 |
| 7969 | Bulk Product 5953bf10 | Electronics | $467.50 | 443 | ★ 4.1 | 53 | BULK-c27483cd |
| 7970 | Bulk Product 99d83042 | Sports & Outdoors | $1,001.35 | 280 | ★ 4.6 | 0 | BULK-1ee30444 |
| 7971 | Bulk Product b3c19ba1 | Electronics | $92.86 | 444 | ★ 2.8 | 90 | BULK-1a762360 |
| 7972 | Bulk Product 09c85b21 | Books | $933.09 | 276 | ★ 4.2 | 84 | BULK-2d22d34e |
| 7973 | Bulk Product 10043a8d | Books | $661.99 | 58 | ★ 4.2 | 74 | BULK-fba7c83c |
| 7974 | Bulk Product 4141e326 | Electronics | $846.11 | 391 | ★ 2.4 | 18 | BULK-cf31c0af |
| 7975 | Bulk Product 77f6dabc | Home & Garden | $1,000.58 | 51 | ★ 1.8 | 22 | BULK-f7f6c267 |
| 7976 | Bulk Product d0587502 | Sports & Outdoors | $280.26 | 487 | ★ 0.1 | 28 | BULK-695408b2 |
| 7977 | Bulk Product b9c530dc | Clothing | $57.16 | 196 | ★ 0.5 | 35 | BULK-6ea46584 |
| 7978 | Bulk Product 8905938b | Home & Garden | $52.08 | 71 | ★ 3.9 | 45 | BULK-c69a0283 |
| 7979 | Bulk Product 394b227a | Home & Garden | $959.84 | 369 | ★ 1.2 | 88 | BULK-be1e2466 |
| 7980 | Bulk Product dadf99b0 | Books | $429.82 | 298 | ★ 2.4 | 91 | BULK-a96d3e07 |
| 7981 | Bulk Product fcbe18c5 | Electronics | $19.34 | 499 | ★ 2.6 | 74 | BULK-0d19f8b5 |
| 7982 | Bulk Product 9aa82458 | Books | $575.49 | 349 | ★ 0.8 | 3 | BULK-24b0ac8b |
| 7983 | Bulk Product 0f620f29 | Electronics | $541.25 | 214 | ★ 1.6 | 28 | BULK-c1062e64 |
| 7984 | Bulk Product b87b2258 | Home & Garden | $594.84 | 498 | ★ 3.8 | 51 | BULK-82e9e78a |
| 7985 | Bulk Product bfd1da5e | Home & Garden | $872.25 | 51 | ★ 1.5 | 90 | BULK-3b4bd2cf |
| 7986 | Bulk Product 84906851 | Books | $831.18 | 473 | ★ 4.6 | 70 | BULK-0c932d2b |
| 7987 | Bulk Product 9b15827d | Clothing | $871.77 | 89 | ★ 3.7 | 13 | BULK-5b3f4fe3 |
| 7988 | Bulk Product 74a48dfa | Electronics | $310.89 | 218 | ★ 2.9 | 30 | BULK-77d688d9 |
| 7989 | Bulk Product 2e18829c | Home & Garden | $876.63 | 169 | ★ 3.9 | 34 | BULK-04f9876e |
| 7990 | Bulk Product e1f2d511 | Books | $20.72 | 332 | ★ 4.0 | 37 | BULK-f950de95 |
| 7991 | Bulk Product 31392906 | Toys & Games | $263.36 | 221 | ★ 1.3 | 53 | BULK-9e9b99d4 |
| 7992 | Bulk Product 7b239b00 | Home & Garden | $63.75 | 14 | ★ 4.2 | 13 | BULK-2fbbc1e2 |
| 7993 | Bulk Product f8881ef7 | Books | $839.94 | 305 | ★ 3.1 | 22 | BULK-a19d5ddc |
| 7994 | Bulk Product 4c8a355c | Books | $73.38 | 427 | ★ 2.5 | 91 | BULK-64561678 |
| 7995 | Bulk Product 191d60d4 | Home & Garden | $612.34 | 53 | ★ 0.7 | 98 | BULK-46f50640 |
| 7996 | Bulk Product 9518c035 | Home & Garden | $873.10 | 249 | ★ 1.9 | 87 | BULK-40429307 |
| 7997 | Bulk Product 37e15808 | Toys & Games | $12.61 | 18 | ★ 0.6 | 45 | BULK-dd14165e |
| 7998 | Bulk Product 4d2e7733 | Electronics | $480.36 | 82 | ★ 3.1 | 70 | BULK-4d824bc5 |
| 7999 | Bulk Product 3a083b74 | Clothing | $228.29 | 303 | ★ 1.0 | 28 | BULK-0fd3a97a |
| 8000 | Bulk Product 2e3c7995 | Books | $238.93 | 350 | ★ 4.9 | 23 | BULK-403c7827 |
| 8001 | Bulk Product 02d8774a | Books | $941.03 | 456 | ★ 4.6 | 27 | BULK-a54710e7 |
| 8002 | Bulk Product 845370cf | Books | $833.53 | 443 | ★ 0.3 | 69 | BULK-e9393dfd |
| 8003 | Bulk Product 75daab32 | Toys & Games | $756.16 | 404 | ★ 3.6 | 18 | BULK-1227a1be |
| 8004 | Bulk Product 59dc250a | Electronics | $562.86 | 232 | ★ 3.5 | 5 | BULK-0271c0c8 |
| 8005 | Bulk Product 0edec40b | Toys & Games | $37.35 | 187 | ★ 4.8 | 66 | BULK-d6ec1d8f |
| 8006 | Bulk Product 3bfa6512 | Toys & Games | $560.60 | 215 | ★ 4.5 | 71 | BULK-16620f19 |
| 8007 | Bulk Product 1611c281 | Electronics | $299.30 | 210 | ★ 4.9 | 13 | BULK-25698713 |
| 8008 | Bulk Product 468c8293 | Clothing | $407.13 | 45 | ★ 3.6 | 39 | BULK-06606503 |
| 8009 | Bulk Product 5123c041 | Electronics | $372.93 | 179 | ★ 3.0 | 46 | BULK-4317176a |
// 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
};
}