Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 23560 | Bulk Product c98b1d86 | Home & Garden | $112.78 | 440 | ★ 4.0 | 27 | BULK-55be5a62 |
| 23561 | Bulk Product 4afcc0c7 | Toys & Games | $516.54 | 493 | ★ 0.1 | 38 | BULK-f07aeaf6 |
| 23562 | Bulk Product 60d28910 | Toys & Games | $725.91 | 60 | ★ 0.1 | 28 | BULK-070843c2 |
| 23563 | Bulk Product f005bb24 | Toys & Games | $641.72 | 285 | ★ 3.3 | 83 | BULK-9c8e0d21 |
| 23564 | Bulk Product 5e42cef4 | Toys & Games | $729.35 | 217 | ★ 1.0 | 84 | BULK-f70c76b0 |
| 23565 | Bulk Product ba167d62 | Sports & Outdoors | $540.34 | 71 | ★ 0.3 | 53 | BULK-38f4f7d4 |
| 23566 | Bulk Product 8410f4c9 | Electronics | $156.65 | 224 | ★ 4.9 | 87 | BULK-df8d2cd7 |
| 23567 | Bulk Product abb949dd | Books | $102.44 | 264 | ★ 2.6 | 3 | BULK-537975be |
| 23568 | Bulk Product ea9af1cb | Clothing | $73.84 | 473 | ★ 0.1 | 67 | BULK-d2a1d2f7 |
| 23569 | Bulk Product 8d33005c | Clothing | $19.18 | 33 | ★ 2.6 | 3 | BULK-76b7b466 |
| 23570 | Bulk Product b2439a49 | Clothing | $244.32 | 8 | ★ 1.8 | 76 | BULK-2170d263 |
| 23571 | Bulk Product c5e4d050 | Clothing | $341.92 | 476 | ★ 3.3 | 82 | BULK-f9e768e2 |
| 23572 | Bulk Product 87f99c28 | Electronics | $688.62 | 257 | ★ 2.4 | 50 | BULK-95c0b256 |
| 23573 | Bulk Product 97238d3c | Clothing | $181.94 | 184 | ★ 1.8 | 85 | BULK-cb97eb36 |
| 23574 | Bulk Product 7976e2b2 | Clothing | $869.20 | 204 | ★ 1.8 | 35 | BULK-f20b1b75 |
| 23575 | Bulk Product e5dc569c | Sports & Outdoors | $269.44 | 71 | ★ 4.3 | 42 | BULK-f5c6bbc0 |
| 23576 | Bulk Product aca31baf | Books | $208.44 | 22 | ★ 2.4 | 40 | BULK-4316b60c |
| 23577 | Bulk Product 80e75052 | Electronics | $140.30 | 72 | ★ 0.6 | 28 | BULK-498f2c4c |
| 23578 | Bulk Product efc1ed11 | Sports & Outdoors | $414.53 | 367 | ★ 3.8 | 66 | BULK-9ce7e676 |
| 23579 | Bulk Product 889a8e1e | Books | $133.42 | 349 | ★ 1.2 | 24 | BULK-af160e3d |
| 23580 | Bulk Product 9844db0e | Electronics | $59.42 | 101 | ★ 2.9 | 78 | BULK-09a3beac |
| 23581 | Bulk Product ebd421f3 | Electronics | $419.46 | 295 | ★ 3.6 | 33 | BULK-0f968643 |
| 23582 | Bulk Product 77060560 | Home & Garden | $363.34 | 165 | ★ 1.5 | 81 | BULK-8ea2e99b |
| 23583 | Bulk Product 5cc5f88d | Toys & Games | $329.51 | 107 | ★ 4.8 | 84 | BULK-1198b460 |
| 23584 | Bulk Product e917dfd3 | Sports & Outdoors | $545.74 | 108 | ★ 1.6 | 61 | BULK-f625a14f |
| 23585 | Bulk Product 680cc18e | Books | $415.74 | 18 | ★ 0.9 | 65 | BULK-adea5d7c |
| 23586 | Bulk Product 886b0d07 | Sports & Outdoors | $648.33 | 5 | ★ 1.7 | 42 | BULK-91b672c3 |
| 23587 | Bulk Product fe2c2f8c | Home & Garden | $504.03 | 377 | ★ 3.0 | 26 | BULK-be920bae |
| 23588 | Bulk Product 9111f587 | Home & Garden | $210.99 | 111 | ★ 1.2 | 39 | BULK-41bb7c32 |
| 23589 | Bulk Product 18fea742 | Home & Garden | $379.41 | 42 | ★ 1.8 | 23 | BULK-01dc19e3 |
| 23590 | Bulk Product 86005d4e | Clothing | $88.61 | 12 | ★ 1.2 | 65 | BULK-522d85e3 |
| 23591 | Bulk Product d87f7154 | Home & Garden | $416.97 | 368 | ★ 4.2 | 65 | BULK-d02a870c |
| 23592 | Bulk Product e52de770 | Electronics | $175.24 | 386 | ★ 4.2 | 49 | BULK-510fb183 |
| 23593 | Bulk Product 354b63c6 | Toys & Games | $773.90 | 6 | ★ 1.1 | 36 | BULK-68a018d9 |
| 23594 | Bulk Product c7591ab4 | Home & Garden | $498.05 | 440 | ★ 1.8 | 94 | BULK-3f2553a1 |
| 23595 | Bulk Product ad5d39e9 | Home & Garden | $455.64 | 239 | ★ 2.6 | 78 | BULK-c3733c8e |
| 23596 | Bulk Product 78044209 | Toys & Games | $64.40 | 166 | ★ 1.4 | 15 | BULK-a8f8ab37 |
| 23597 | Bulk Product 09dab022 | Toys & Games | $104.33 | 407 | ★ 3.2 | 34 | BULK-df9cf0c1 |
| 23598 | Bulk Product 529c173f | Toys & Games | $235.65 | 113 | ★ 0.4 | 11 | BULK-664b092f |
| 23599 | Bulk Product 03b7319e | Clothing | $818.00 | 244 | ★ 3.6 | 82 | BULK-6c317f6e |
| 23600 | Bulk Product 4cc680a5 | Books | $144.01 | 250 | ★ 2.9 | 94 | BULK-ba098c33 |
| 23601 | Bulk Product 378a3b74 | Home & Garden | $122.79 | 210 | ★ 4.6 | 83 | BULK-81bb00a3 |
| 23602 | Bulk Product 4d34e9eb | Toys & Games | $344.03 | 244 | ★ 4.2 | 54 | BULK-f1f9c99a |
| 23603 | Bulk Product 76bda0dd | Home & Garden | $904.67 | 330 | ★ 4.7 | 38 | BULK-d73ae36a |
| 23604 | Bulk Product da8e5997 | Sports & Outdoors | $257.04 | 457 | ★ 3.2 | 16 | BULK-b9671b49 |
| 23605 | Bulk Product 398098ff | Clothing | $289.22 | 349 | ★ 1.7 | 18 | BULK-63db83d8 |
| 23606 | Bulk Product ba25c54a | Toys & Games | $615.25 | 444 | ★ 1.5 | 43 | BULK-71730a60 |
| 23607 | Bulk Product f164e48a | Toys & Games | $649.49 | 181 | ★ 1.2 | 89 | BULK-59dcb08b |
| 23608 | Bulk Product 26674403 | Sports & Outdoors | $531.15 | 368 | ★ 4.5 | 68 | BULK-f50db60e |
| 23609 | Bulk Product 535bdeb5 | Home & Garden | $310.44 | 35 | ★ 2.9 | 61 | BULK-e62555a2 |
// 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
};
}