Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 22510 | Bulk Product 1585bf32 | Books | $488.96 | 88 | ★ 3.6 | 60 | BULK-27f986fb |
| 22511 | Bulk Product 6212ad4d | Toys & Games | $464.33 | 78 | ★ 2.7 | 21 | BULK-433939eb |
| 22512 | Bulk Product a4be0c60 | Books | $422.93 | 51 | ★ 1.9 | 80 | BULK-6f35a0dd |
| 22513 | Bulk Product 9d882117 | Toys & Games | $713.74 | 254 | ★ 4.2 | 49 | BULK-b6d703d8 |
| 22514 | Bulk Product daa0eb92 | Books | $620.96 | 334 | ★ 2.0 | 12 | BULK-492df9ac |
| 22515 | Bulk Product 0cef680c | Books | $129.66 | 400 | ★ 4.8 | 62 | BULK-aa62f2a6 |
| 22516 | Bulk Product 7c9bb762 | Books | $672.53 | 253 | ★ 2.4 | 52 | BULK-e293c3f9 |
| 22517 | Bulk Product 474a6147 | Clothing | $207.75 | 123 | ★ 1.7 | 53 | BULK-d784a4d3 |
| 22518 | Bulk Product 22013de1 | Home & Garden | $605.40 | 419 | ★ 0.9 | 42 | BULK-cf3e96ad |
| 22519 | Bulk Product 8fda3448 | Sports & Outdoors | $957.37 | 155 | ★ 0.5 | 91 | BULK-c978fa13 |
| 22520 | Bulk Product 32ef11f6 | Toys & Games | $529.85 | 342 | ★ 0.2 | 37 | BULK-ca50d014 |
| 22521 | Bulk Product 5eade75c | Toys & Games | $920.53 | 386 | ★ 0.6 | 37 | BULK-03712cb1 |
| 22522 | Bulk Product f1b5466e | Toys & Games | $847.46 | 68 | ★ 2.8 | 36 | BULK-7607d618 |
| 22523 | Bulk Product fee67d45 | Clothing | $759.58 | 87 | ★ 4.2 | 30 | BULK-b3768001 |
| 22524 | Bulk Product 7d213c63 | Clothing | $208.11 | 59 | ★ 3.4 | 31 | BULK-51327b1f |
| 22525 | Bulk Product 57de703f | Toys & Games | $425.83 | 159 | ★ 4.7 | 36 | BULK-19957af6 |
| 22526 | Bulk Product 77251194 | Toys & Games | $995.06 | 344 | ★ 1.8 | 9 | BULK-8a76dbd3 |
| 22527 | Bulk Product de4e47b9 | Toys & Games | $642.06 | 126 | ★ 3.0 | 51 | BULK-8e1fdbcf |
| 22528 | Bulk Product 19ca8064 | Home & Garden | $120.30 | 195 | ★ 0.4 | 15 | BULK-7e539145 |
| 22529 | Bulk Product 4c1add52 | Home & Garden | $620.79 | 493 | ★ 5.0 | 67 | BULK-e304d423 |
| 22530 | Bulk Product 4f974710 | Electronics | $537.89 | 310 | ★ 1.5 | 39 | BULK-766472f6 |
| 22531 | Bulk Product 709266e9 | Books | $397.29 | 108 | ★ 2.1 | 18 | BULK-89b68946 |
| 22532 | Bulk Product 7f7f8e61 | Electronics | $239.53 | 445 | ★ 0.8 | 77 | BULK-c20625bb |
| 22533 | Bulk Product 1ed61ad3 | Electronics | $81.84 | 452 | ★ 0.2 | 20 | BULK-3c33e6c1 |
| 22534 | Bulk Product b0e82820 | Home & Garden | $372.50 | 491 | ★ 1.7 | 52 | BULK-fe6f5059 |
| 22535 | Bulk Product f9248715 | Sports & Outdoors | $327.17 | 79 | ★ 0.6 | 45 | BULK-987cc5eb |
| 22536 | Bulk Product 04314dd1 | Electronics | $345.71 | 113 | ★ 4.0 | 24 | BULK-62cc033b |
| 22537 | Bulk Product 68dc6f37 | Electronics | $191.34 | 187 | ★ 3.7 | 6 | BULK-95796441 |
| 22538 | Bulk Product eb202149 | Home & Garden | $436.02 | 394 | ★ 1.8 | 62 | BULK-fadb4f2c |
| 22539 | Bulk Product 16328f09 | Books | $331.58 | 83 | ★ 2.5 | 57 | BULK-b09a15b5 |
| 22540 | Bulk Product 8dfb1a0a | Electronics | $526.29 | 470 | ★ 2.9 | 76 | BULK-cd3285fb |
| 22541 | Bulk Product 3eef1d00 | Clothing | $513.32 | 469 | ★ 2.3 | 85 | BULK-a0655e10 |
| 22542 | Bulk Product f63e101a | Electronics | $396.24 | 103 | ★ 0.5 | 62 | BULK-f91f458e |
| 22543 | Bulk Product 9523a9ff | Books | $659.22 | 458 | ★ 4.1 | 66 | BULK-72e6eb97 |
| 22544 | Bulk Product aec3fc92 | Electronics | $346.97 | 64 | ★ 0.1 | 91 | BULK-348ae387 |
| 22545 | Bulk Product 1c85cbfa | Sports & Outdoors | $170.44 | 493 | ★ 2.8 | 34 | BULK-695d5e2c |
| 22546 | Bulk Product 23cc8a33 | Home & Garden | $945.78 | 475 | ★ 4.3 | 75 | BULK-07f95a3a |
| 22547 | Bulk Product 94bb3a51 | Home & Garden | $591.51 | 309 | ★ 2.1 | 24 | BULK-b6bbf033 |
| 22548 | Bulk Product f9e7bfe1 | Books | $875.76 | 401 | ★ 4.7 | 30 | BULK-8c323634 |
| 22549 | Bulk Product 3e6d9638 | Home & Garden | $119.61 | 377 | ★ 4.0 | 92 | BULK-7ac35ed5 |
| 22550 | Bulk Product 9c11dd23 | Home & Garden | $160.07 | 314 | ★ 4.2 | 14 | BULK-f19a2f71 |
| 22551 | Bulk Product 28b971f6 | Books | $457.25 | 194 | ★ 0.4 | 39 | BULK-7d6b4cd0 |
| 22552 | Bulk Product f5c5025b | Home & Garden | $616.09 | 445 | ★ 1.8 | 8 | BULK-597b5c60 |
| 22553 | Bulk Product 465acade | Toys & Games | $420.67 | 117 | ★ 0.0 | 32 | BULK-f9fa5bd9 |
| 22554 | Bulk Product b4e58c68 | Clothing | $772.12 | 477 | ★ 4.6 | 75 | BULK-27f3957d |
| 22555 | Bulk Product 0f37a748 | Sports & Outdoors | $821.00 | 415 | ★ 2.0 | 61 | BULK-61a2bba7 |
| 22556 | Bulk Product 7c8d5f38 | Home & Garden | $38.01 | 57 | ★ 2.5 | 69 | BULK-a531746c |
| 22557 | Bulk Product d5cc170e | Toys & Games | $634.50 | 284 | ★ 3.7 | 96 | BULK-dd6492df |
| 22558 | Bulk Product b00c5edf | Books | $799.64 | 297 | ★ 3.7 | 17 | BULK-eb79aeca |
| 22559 | Bulk Product 5280756b | Toys & Games | $366.45 | 449 | ★ 4.2 | 24 | BULK-78112fd8 |
// 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
};
}