Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 13510 | Bulk Product 155a3c56 | Electronics | $655.60 | 236 | ★ 0.5 | 16 | BULK-21b1fefd |
| 13511 | Bulk Product 05de3ebb | Toys & Games | $486.30 | 334 | ★ 4.5 | 78 | BULK-b2593cbc |
| 13512 | Bulk Product 11a86ff0 | Home & Garden | $552.45 | 65 | ★ 2.5 | 84 | BULK-169f8c97 |
| 13513 | Bulk Product a41806e1 | Books | $623.63 | 158 | ★ 2.8 | 9 | BULK-dac8cc0c |
| 13514 | Bulk Product 84de7d9a | Sports & Outdoors | $89.60 | 106 | ★ 4.9 | 38 | BULK-dc02dc78 |
| 13515 | Bulk Product 7b71b094 | Electronics | $623.23 | 405 | ★ 1.9 | 39 | BULK-4deeac39 |
| 13516 | Bulk Product 1d269207 | Home & Garden | $286.38 | 363 | ★ 1.5 | 39 | BULK-d82e3a74 |
| 13517 | Bulk Product 6bb4d065 | Home & Garden | $992.35 | 264 | ★ 2.7 | 97 | BULK-89215ab8 |
| 13518 | Bulk Product 54bf21b5 | Sports & Outdoors | $917.23 | 133 | ★ 0.4 | 83 | BULK-5ce3bff7 |
| 13519 | Bulk Product c49a252d | Electronics | $245.76 | 229 | ★ 3.4 | 69 | BULK-05c61326 |
| 13520 | Bulk Product 65170b11 | Clothing | $764.89 | 349 | ★ 0.1 | 77 | BULK-c1274d0f |
| 13521 | Bulk Product 4f700491 | Books | $906.88 | 339 | ★ 2.2 | 85 | BULK-93becbac |
| 13522 | Bulk Product ce1eb9ff | Books | $318.61 | 412 | ★ 2.5 | 15 | BULK-bfadc5a1 |
| 13523 | Bulk Product ce825e4a | Books | $826.31 | 197 | ★ 1.6 | 90 | BULK-a8b77d2b |
| 13524 | Bulk Product 02165214 | Sports & Outdoors | $289.65 | 131 | ★ 1.7 | 60 | BULK-81379b8c |
| 13525 | Bulk Product 8b633605 | Books | $791.69 | 245 | ★ 1.1 | 48 | BULK-b280eb7f |
| 13526 | Bulk Product a9f2611a | Toys & Games | $216.24 | 266 | ★ 2.5 | 58 | BULK-9f5e0c54 |
| 13527 | Bulk Product f01a588c | Books | $571.05 | 112 | ★ 3.2 | 93 | BULK-506ea227 |
| 13528 | Bulk Product 790d1df9 | Toys & Games | $89.27 | 189 | ★ 4.1 | 13 | BULK-de2b43ce |
| 13529 | Bulk Product 4f8aa339 | Toys & Games | $244.41 | 26 | ★ 0.3 | 27 | BULK-d7abb581 |
| 13530 | Bulk Product ea9f8da3 | Toys & Games | $460.27 | 345 | ★ 1.7 | 62 | BULK-0d038aaa |
| 13531 | Bulk Product a863133f | Home & Garden | $301.55 | 10 | ★ 4.1 | 91 | BULK-7f50421f |
| 13532 | Bulk Product 879d941e | Home & Garden | $757.41 | 199 | ★ 2.5 | 74 | BULK-0830a594 |
| 13533 | Bulk Product 8aadbb44 | Clothing | $269.08 | 398 | ★ 1.5 | 64 | BULK-799973fc |
| 13534 | Bulk Product d5f071cd | Sports & Outdoors | $902.36 | 48 | ★ 0.8 | 27 | BULK-44142c33 |
| 13535 | Bulk Product 983d7d88 | Electronics | $498.75 | 436 | ★ 4.2 | 58 | BULK-b6296baf |
| 13536 | Bulk Product 6b95ec29 | Books | $852.25 | 397 | ★ 3.8 | 73 | BULK-d99e26cb |
| 13537 | Bulk Product 019def52 | Electronics | $654.36 | 68 | ★ 3.1 | 83 | BULK-ae2985e9 |
| 13538 | Bulk Product db6b49ae | Sports & Outdoors | $728.00 | 404 | ★ 1.9 | 91 | BULK-00ea7b31 |
| 13539 | Bulk Product 66348479 | Home & Garden | $360.97 | 103 | ★ 1.8 | 63 | BULK-93619ba3 |
| 13540 | Bulk Product 84aa6bbf | Books | $476.61 | 132 | ★ 0.2 | 87 | BULK-019c4a0d |
| 13541 | Bulk Product 3ca178dd | Electronics | $837.09 | 259 | ★ 1.0 | 6 | BULK-c401b4c1 |
| 13542 | Bulk Product 2541b6df | Books | $410.05 | 40 | ★ 0.1 | 96 | BULK-1c1d7a3e |
| 13543 | Bulk Product 006e4402 | Books | $685.85 | 15 | ★ 2.2 | 58 | BULK-82c0a81e |
| 13544 | Bulk Product 089f6c87 | Sports & Outdoors | $163.96 | 442 | ★ 1.2 | 23 | BULK-6eccaf8b |
| 13545 | Bulk Product e2adf647 | Sports & Outdoors | $933.32 | 205 | ★ 1.2 | 95 | BULK-78d1fa1f |
| 13546 | Bulk Product 7c77fe46 | Sports & Outdoors | $538.15 | 384 | ★ 2.3 | 31 | BULK-7ac9149a |
| 13547 | Bulk Product 588fab8c | Home & Garden | $473.87 | 405 | ★ 5.0 | 95 | BULK-47e7e09f |
| 13548 | Bulk Product 27861d68 | Books | $883.40 | 112 | ★ 4.5 | 62 | BULK-973608b1 |
| 13549 | Bulk Product bc7f9705 | Clothing | $988.90 | 210 | ★ 0.3 | 99 | BULK-660ef5f1 |
| 13550 | Bulk Product 210444ce | Toys & Games | $590.21 | 481 | ★ 2.0 | 85 | BULK-28fc57e7 |
| 13551 | Bulk Product abad6dbf | Clothing | $201.93 | 416 | ★ 4.1 | 68 | BULK-7cc26cb3 |
| 13552 | Bulk Product 684a595c | Toys & Games | $154.72 | 399 | ★ 3.3 | 41 | BULK-1a7eabb2 |
| 13553 | Bulk Product 87c8406c | Sports & Outdoors | $472.95 | 204 | ★ 4.5 | 57 | BULK-3f1bff88 |
| 13554 | Bulk Product 49e314b6 | Books | $34.62 | 5 | ★ 1.9 | 64 | BULK-cd183199 |
| 13555 | Bulk Product 19078c65 | Books | $625.51 | 245 | ★ 4.9 | 91 | BULK-e7922724 |
| 13556 | Bulk Product 9360805b | Books | $506.29 | 432 | ★ 4.4 | 4 | BULK-fd85e6af |
| 13557 | Bulk Product 864d47ce | Clothing | $642.54 | 210 | ★ 1.1 | 56 | BULK-757f4aa0 |
| 13558 | Bulk Product 83aebc6f | Sports & Outdoors | $563.34 | 122 | ★ 3.8 | 22 | BULK-faa10c1c |
| 13559 | Bulk Product 3caffa12 | Toys & Games | $376.70 | 485 | ★ 4.0 | 87 | BULK-4fd44656 |
// 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
};
}