Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 5560 | Bulk Product c75525bb | Clothing | $120.46 | 218 | ★ 2.1 | 58 | BULK-ce9b6af7 |
| 5561 | Bulk Product cb5f733d | Toys & Games | $235.89 | 248 | ★ 1.4 | 29 | BULK-95904eb7 |
| 5562 | Bulk Product e737ada9 | Electronics | $712.22 | 159 | ★ 3.9 | 32 | BULK-f1edc603 |
| 5563 | Bulk Product 3fd3cbd6 | Toys & Games | $300.41 | 341 | ★ 3.5 | 97 | BULK-e9038008 |
| 5564 | Bulk Product 903a8859 | Electronics | $70.06 | 450 | ★ 0.8 | 18 | BULK-525c985c |
| 5565 | Bulk Product 9c0f3292 | Sports & Outdoors | $613.14 | 202 | ★ 3.6 | 2 | BULK-86679e6d |
| 5566 | Bulk Product 25ee7971 | Toys & Games | $49.05 | 362 | ★ 0.8 | 14 | BULK-bf06c9bf |
| 5567 | Bulk Product ba0fff9e | Electronics | $638.74 | 286 | ★ 1.3 | 91 | BULK-5d9c7090 |
| 5568 | Bulk Product 2bb4bbc0 | Electronics | $453.55 | 7 | ★ 3.4 | 12 | BULK-a0612899 |
| 5569 | Bulk Product 0eaf97c1 | Home & Garden | $847.41 | 250 | ★ 0.1 | 66 | BULK-21a945d4 |
| 5570 | Bulk Product c13b5898 | Electronics | $782.80 | 268 | ★ 0.9 | 54 | BULK-94f0e25b |
| 5571 | Bulk Product 67108962 | Home & Garden | $962.82 | 233 | ★ 0.2 | 9 | BULK-c871087f |
| 5572 | Bulk Product 2935f148 | Electronics | $405.66 | 227 | ★ 2.2 | 51 | BULK-1a7e3912 |
| 5573 | Bulk Product 2381d186 | Sports & Outdoors | $177.03 | 134 | ★ 1.2 | 82 | BULK-7e87c9e3 |
| 5574 | Bulk Product 369216ce | Sports & Outdoors | $324.56 | 240 | ★ 1.9 | 81 | BULK-caab1d97 |
| 5575 | Bulk Product 93e2e3b4 | Books | $277.31 | 30 | ★ 4.5 | 4 | BULK-5a19de90 |
| 5576 | Bulk Product ed9bed3a | Home & Garden | $791.40 | 388 | ★ 4.2 | 32 | BULK-ba2829db |
| 5577 | Bulk Product f2698e3c | Books | $449.86 | 71 | ★ 2.6 | 67 | BULK-74103b1d |
| 5578 | Bulk Product 88e4a85d | Sports & Outdoors | $522.00 | 400 | ★ 0.3 | 14 | BULK-3b8e1233 |
| 5579 | Bulk Product 26138356 | Home & Garden | $758.81 | 199 | ★ 3.1 | 33 | BULK-7c4be1ff |
| 5580 | Bulk Product 53d95a7e | Sports & Outdoors | $732.55 | 288 | ★ 3.2 | 10 | BULK-ac4d2e92 |
| 5581 | Bulk Product 882d1baa | Sports & Outdoors | $799.22 | 79 | ★ 2.3 | 6 | BULK-a10a6ac4 |
| 5582 | Bulk Product 4c87bb00 | Clothing | $522.15 | 487 | ★ 1.2 | 66 | BULK-cef2551f |
| 5583 | Bulk Product 169caca4 | Home & Garden | $754.13 | 238 | ★ 4.6 | 6 | BULK-37314621 |
| 5584 | Bulk Product 4a937792 | Home & Garden | $401.78 | 163 | ★ 1.7 | 20 | BULK-0fd807dc |
| 5585 | Bulk Product db24d9f4 | Books | $73.30 | 472 | ★ 1.0 | 20 | BULK-5149a661 |
| 5586 | Bulk Product eb0bf769 | Sports & Outdoors | $531.61 | 27 | ★ 2.1 | 83 | BULK-6e7bab3c |
| 5587 | Bulk Product d3724bac | Electronics | $706.72 | 164 | ★ 4.5 | 45 | BULK-7d98b10a |
| 5588 | Bulk Product b31a5baf | Toys & Games | $37.52 | 257 | ★ 2.8 | 81 | BULK-31a25d65 |
| 5589 | Bulk Product 2134df15 | Toys & Games | $753.38 | 40 | ★ 0.7 | 78 | BULK-680b9b84 |
| 5590 | Bulk Product 5b9d3243 | Home & Garden | $548.37 | 427 | ★ 1.9 | 27 | BULK-e44eaece |
| 5591 | Bulk Product 94f207a9 | Electronics | $23.48 | 212 | ★ 4.7 | 66 | BULK-06ddc4db |
| 5592 | Bulk Product 7f2883c3 | Home & Garden | $824.90 | 27 | ★ 4.9 | 8 | BULK-9990c6fb |
| 5593 | Bulk Product c448244a | Electronics | $513.00 | 268 | ★ 2.6 | 57 | BULK-44db641b |
| 5594 | Bulk Product 1370a776 | Clothing | $448.97 | 353 | ★ 3.7 | 48 | BULK-d49141d1 |
| 5595 | Bulk Product 757573a6 | Clothing | $364.16 | 75 | ★ 2.7 | 57 | BULK-2db3b587 |
| 5596 | Bulk Product 117eb49a | Electronics | $345.16 | 273 | ★ 4.1 | 17 | BULK-012134ca |
| 5597 | Bulk Product df737d0c | Home & Garden | $790.25 | 54 | ★ 1.9 | 30 | BULK-20438fbc |
| 5598 | Bulk Product a81717ee | Clothing | $235.34 | 20 | ★ 1.4 | 86 | BULK-3f17a964 |
| 5599 | Bulk Product 1b8f3627 | Clothing | $720.04 | 396 | ★ 2.2 | 22 | BULK-3d1c0a9d |
| 5600 | Bulk Product d804b42e | Sports & Outdoors | $232.19 | 366 | ★ 0.6 | 13 | BULK-2da0bffb |
| 5601 | Bulk Product fe2462f8 | Home & Garden | $871.36 | 326 | ★ 1.0 | 37 | BULK-2eb0f611 |
| 5602 | Bulk Product 550089b1 | Sports & Outdoors | $208.56 | 451 | ★ 0.2 | 86 | BULK-a2253818 |
| 5603 | Bulk Product 0a07a9ff | Home & Garden | $735.43 | 393 | ★ 3.5 | 44 | BULK-55eb4b7c |
| 5604 | Bulk Product c92dcf9d | Toys & Games | $919.12 | 50 | ★ 1.8 | 91 | BULK-9fa20ea2 |
| 5605 | Bulk Product 60aab798 | Clothing | $342.35 | 238 | ★ 0.8 | 10 | BULK-0678333c |
| 5606 | Bulk Product e7232bcf | Sports & Outdoors | $1,009.44 | 112 | ★ 0.8 | 82 | BULK-a7748af3 |
| 5607 | Bulk Product f7dab0f2 | Clothing | $65.57 | 370 | ★ 4.5 | 94 | BULK-ded8795f |
| 5608 | Bulk Product 96801551 | Clothing | $610.28 | 360 | ★ 4.2 | 37 | BULK-e5959612 |
| 5609 | Bulk Product b831bf5b | Toys & Games | $877.95 | 203 | ★ 0.7 | 15 | BULK-68119194 |
// 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
};
}