Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 8710 | Bulk Product 3374bdd9 | Toys & Games | $651.87 | 194 | ★ 3.2 | 59 | BULK-123e0bb6 |
| 8711 | Bulk Product acd51975 | Electronics | $319.88 | 280 | ★ 4.3 | 89 | BULK-99f2b691 |
| 8712 | Bulk Product 70cb8e0a | Toys & Games | $574.11 | 333 | ★ 1.9 | 77 | BULK-5e0bd3ea |
| 8713 | Bulk Product a8e3ff61 | Toys & Games | $936.06 | 249 | ★ 4.1 | 60 | BULK-23677662 |
| 8714 | Bulk Product b5ce585e | Sports & Outdoors | $369.39 | 204 | ★ 1.4 | 95 | BULK-a7e7560a |
| 8715 | Bulk Product 1555913f | Toys & Games | $750.43 | 103 | ★ 1.8 | 79 | BULK-a93215ef |
| 8716 | Bulk Product 672f6c98 | Home & Garden | $214.11 | 464 | ★ 2.5 | 69 | BULK-e9b6b1b4 |
| 8717 | Bulk Product 23563af1 | Sports & Outdoors | $401.49 | 65 | ★ 1.0 | 57 | BULK-ebc46f90 |
| 8718 | Bulk Product 5aee7d50 | Home & Garden | $476.07 | 228 | ★ 2.1 | 35 | BULK-4e5c061d |
| 8719 | Bulk Product a188a842 | Toys & Games | $872.88 | 226 | ★ 3.4 | 13 | BULK-13102a2e |
| 8720 | Bulk Product a4b37cd9 | Home & Garden | $625.30 | 327 | ★ 4.6 | 94 | BULK-63ec64ab |
| 8721 | Bulk Product 931f0b88 | Clothing | $140.83 | 86 | ★ 2.5 | 7 | BULK-6ea97752 |
| 8722 | Bulk Product c339d510 | Electronics | $647.73 | 134 | ★ 4.5 | 17 | BULK-c6f1885b |
| 8723 | Bulk Product e14a5d3a | Home & Garden | $148.31 | 174 | ★ 1.4 | 9 | BULK-f88a5a29 |
| 8724 | Bulk Product 4ab75299 | Home & Garden | $840.75 | 309 | ★ 0.2 | 99 | BULK-254d55e0 |
| 8725 | Bulk Product b18aa0ad | Clothing | $541.08 | 214 | ★ 3.2 | 0 | BULK-de816201 |
| 8726 | Bulk Product 906ec3fb | Home & Garden | $231.68 | 384 | ★ 3.6 | 92 | BULK-52622e21 |
| 8727 | Bulk Product 27c99cf7 | Clothing | $578.17 | 210 | ★ 4.1 | 57 | BULK-f6e75bca |
| 8728 | Bulk Product ddf0dd4b | Home & Garden | $252.61 | 68 | ★ 3.2 | 69 | BULK-3afceade |
| 8729 | Bulk Product 4f4b9371 | Sports & Outdoors | $161.99 | 80 | ★ 2.0 | 64 | BULK-c2a84777 |
| 8730 | Bulk Product b93ce3db | Sports & Outdoors | $130.93 | 410 | ★ 4.2 | 52 | BULK-1f639926 |
| 8731 | Bulk Product e6201bb1 | Clothing | $149.96 | 1 | ★ 3.6 | 99 | BULK-990ca702 |
| 8732 | Bulk Product 1d811817 | Books | $779.33 | 437 | ★ 3.8 | 74 | BULK-f0aa7b35 |
| 8733 | Bulk Product 494fbda6 | Clothing | $54.00 | 153 | ★ 4.3 | 96 | BULK-51df5b40 |
| 8734 | Bulk Product a20ab515 | Electronics | $27.37 | 42 | ★ 0.4 | 86 | BULK-4074ac32 |
| 8735 | Bulk Product 3e7ade30 | Toys & Games | $964.33 | 83 | ★ 2.3 | 22 | BULK-6c074df4 |
| 8736 | Bulk Product 38787c68 | Home & Garden | $967.40 | 0 | ★ 3.3 | 72 | BULK-db249f2d |
| 8737 | Bulk Product 6ee7fb2d | Home & Garden | $605.08 | 302 | ★ 0.7 | 12 | BULK-2c313e59 |
| 8738 | Bulk Product 519faefd | Clothing | $638.39 | 81 | ★ 4.1 | 14 | BULK-03bc2707 |
| 8739 | Bulk Product 6615c61c | Toys & Games | $419.46 | 310 | ★ 0.6 | 18 | BULK-565372be |
| 8740 | Bulk Product 879d71f5 | Sports & Outdoors | $648.17 | 487 | ★ 4.0 | 38 | BULK-61263384 |
| 8741 | Bulk Product 39bea089 | Electronics | $838.19 | 97 | ★ 1.1 | 83 | BULK-453ea0ef |
| 8742 | Bulk Product 9e50d630 | Clothing | $686.46 | 147 | ★ 2.4 | 98 | BULK-0d7ac79e |
| 8743 | Bulk Product 959ab3ca | Sports & Outdoors | $921.69 | 21 | ★ 4.6 | 62 | BULK-b9ae55cd |
| 8744 | Bulk Product f4fe0f63 | Sports & Outdoors | $160.78 | 186 | ★ 3.9 | 26 | BULK-614a8299 |
| 8745 | Bulk Product e1e36ca2 | Clothing | $272.10 | 403 | ★ 4.6 | 23 | BULK-811c8a30 |
| 8746 | Bulk Product 1f4f6065 | Clothing | $716.46 | 211 | ★ 4.0 | 6 | BULK-6d990bb3 |
| 8747 | Bulk Product 26ac63fc | Home & Garden | $338.22 | 108 | ★ 1.5 | 63 | BULK-f07a9db7 |
| 8748 | Bulk Product 6bd3daae | Clothing | $673.59 | 498 | ★ 0.8 | 32 | BULK-04d0589b |
| 8749 | Bulk Product f231dd13 | Toys & Games | $92.10 | 60 | ★ 3.7 | 7 | BULK-1710eb1d |
| 8750 | Bulk Product b860f81b | Electronics | $703.94 | 189 | ★ 3.3 | 28 | BULK-618b9e62 |
| 8751 | Bulk Product 7ad0300b | Home & Garden | $314.74 | 298 | ★ 2.5 | 43 | BULK-ef6881a7 |
| 8752 | Bulk Product 74f1a08d | Electronics | $701.90 | 487 | ★ 3.1 | 24 | BULK-7a6da03c |
| 8753 | Bulk Product 0cb71727 | Books | $70.96 | 222 | ★ 3.9 | 25 | BULK-3794d509 |
| 8754 | Bulk Product a79ce942 | Clothing | $736.19 | 45 | ★ 3.4 | 73 | BULK-a2b492b5 |
| 8755 | Bulk Product d6c90447 | Toys & Games | $634.74 | 127 | ★ 3.2 | 59 | BULK-2da04dce |
| 8756 | Bulk Product f83d88e2 | Books | $46.18 | 96 | ★ 4.3 | 70 | BULK-30b74754 |
| 8757 | Bulk Product 1671a52a | Electronics | $170.43 | 258 | ★ 0.3 | 93 | BULK-6a28f544 |
| 8758 | Bulk Product 8cddd120 | Books | $890.72 | 381 | ★ 4.3 | 83 | BULK-92ec91ee |
| 8759 | Bulk Product 9ffdfe06 | Electronics | $160.19 | 130 | ★ 4.8 | 70 | BULK-804e8663 |
// 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
};
}