Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 21460 | Bulk Product 08e4b349 | Sports & Outdoors | $583.06 | 466 | ★ 3.8 | 14 | BULK-68114b7c |
| 21461 | Bulk Product 48b25e6e | Home & Garden | $222.40 | 29 | ★ 2.2 | 35 | BULK-4411c86a |
| 21462 | Bulk Product 465e1ec1 | Home & Garden | $690.62 | 441 | ★ 2.0 | 61 | BULK-e2ea76df |
| 21463 | Bulk Product 7bb380d3 | Toys & Games | $951.27 | 467 | ★ 2.0 | 21 | BULK-6dd86043 |
| 21464 | Bulk Product 4d8af1a7 | Electronics | $663.90 | 114 | ★ 0.6 | 75 | BULK-d985f93d |
| 21465 | Bulk Product d9b73b7f | Sports & Outdoors | $112.50 | 336 | ★ 2.9 | 22 | BULK-3d3ab18c |
| 21466 | Bulk Product 814d1e62 | Electronics | $832.25 | 364 | ★ 4.7 | 92 | BULK-677e7b51 |
| 21467 | Bulk Product 051d38d7 | Toys & Games | $782.56 | 276 | ★ 2.6 | 16 | BULK-2154914e |
| 21468 | Bulk Product 72bbe1e0 | Clothing | $929.84 | 453 | ★ 2.0 | 99 | BULK-55f8cd41 |
| 21469 | Bulk Product 967f44bd | Electronics | $738.91 | 106 | ★ 1.2 | 12 | BULK-8b319cc1 |
| 21470 | Bulk Product 3a7b65d0 | Clothing | $51.12 | 41 | ★ 4.4 | 53 | BULK-ab6d6683 |
| 21471 | Bulk Product ccdb74fa | Toys & Games | $121.63 | 21 | ★ 3.7 | 4 | BULK-a8115bf2 |
| 21472 | Bulk Product 83dffbc7 | Home & Garden | $638.75 | 436 | ★ 1.4 | 73 | BULK-0e71b7bb |
| 21473 | Bulk Product 64163233 | Sports & Outdoors | $77.54 | 25 | ★ 3.8 | 45 | BULK-d35f9658 |
| 21474 | Bulk Product aa786715 | Books | $539.79 | 259 | ★ 2.5 | 44 | BULK-994d375c |
| 21475 | Bulk Product e010bcc2 | Home & Garden | $58.72 | 369 | ★ 3.8 | 0 | BULK-2544ff70 |
| 21476 | Bulk Product 71dd9104 | Home & Garden | $79.08 | 115 | ★ 0.1 | 83 | BULK-fe26f395 |
| 21477 | Bulk Product da98dc39 | Books | $151.08 | 267 | ★ 4.0 | 93 | BULK-fea05fa5 |
| 21478 | Bulk Product 22b4fe9c | Home & Garden | $908.10 | 158 | ★ 3.3 | 82 | BULK-26c45e87 |
| 21479 | Bulk Product d39bd02b | Toys & Games | $118.35 | 100 | ★ 1.7 | 22 | BULK-54a9188b |
| 21480 | Bulk Product 606863bb | Toys & Games | $189.98 | 73 | ★ 3.4 | 89 | BULK-a213f456 |
| 21481 | Bulk Product c7418379 | Electronics | $368.84 | 451 | ★ 4.4 | 22 | BULK-2952f4ed |
| 21482 | Bulk Product 2e0071b5 | Toys & Games | $768.84 | 151 | ★ 4.3 | 17 | BULK-68396518 |
| 21483 | Bulk Product fcccb80e | Clothing | $979.27 | 67 | ★ 1.6 | 36 | BULK-983684c5 |
| 21484 | Bulk Product 0a219e96 | Sports & Outdoors | $400.80 | 128 | ★ 2.1 | 95 | BULK-c9820fe3 |
| 21485 | Bulk Product 4a51267b | Electronics | $65.22 | 178 | ★ 4.7 | 50 | BULK-bbc6530d |
| 21486 | Bulk Product d5d8e01f | Books | $709.68 | 35 | ★ 1.1 | 25 | BULK-68c2031e |
| 21487 | Bulk Product 8d2b3ed3 | Clothing | $458.39 | 158 | ★ 2.3 | 44 | BULK-959fcd43 |
| 21488 | Bulk Product d94a0a94 | Books | $907.00 | 42 | ★ 0.7 | 19 | BULK-a2f10ac9 |
| 21489 | Bulk Product aedc397c | Clothing | $308.84 | 217 | ★ 1.3 | 81 | BULK-c8332a69 |
| 21490 | Bulk Product 4526deb8 | Clothing | $991.69 | 445 | ★ 1.8 | 12 | BULK-c9755fa3 |
| 21491 | Bulk Product fb332d99 | Sports & Outdoors | $151.58 | 328 | ★ 2.8 | 85 | BULK-c0c56e09 |
| 21492 | Bulk Product 73de1b40 | Books | $502.87 | 76 | ★ 1.4 | 9 | BULK-aea24bb3 |
| 21493 | Bulk Product d62ac6f1 | Clothing | $178.45 | 378 | ★ 2.2 | 41 | BULK-4756a907 |
| 21494 | Bulk Product 105e0e64 | Clothing | $191.10 | 55 | ★ 3.2 | 35 | BULK-fa34e5df |
| 21495 | Bulk Product fbdab4c1 | Clothing | $839.72 | 446 | ★ 2.4 | 20 | BULK-df0101a8 |
| 21496 | Bulk Product 0401156b | Electronics | $728.06 | 357 | ★ 3.7 | 66 | BULK-af00a6ae |
| 21497 | Bulk Product 698c6370 | Toys & Games | $537.08 | 477 | ★ 2.5 | 53 | BULK-deae2e1e |
| 21498 | Bulk Product 86bdc7b8 | Electronics | $165.85 | 84 | ★ 0.5 | 14 | BULK-91b7754d |
| 21499 | Bulk Product b99e603a | Electronics | $909.91 | 15 | ★ 1.5 | 27 | BULK-7b3aeda6 |
| 21500 | Bulk Product a912bcd9 | Electronics | $662.84 | 456 | ★ 4.9 | 8 | BULK-1e7e8e22 |
| 21501 | Bulk Product 4a9cce8c | Electronics | $811.67 | 334 | ★ 0.9 | 75 | BULK-24cc04be |
| 21502 | Bulk Product 2a69fbf9 | Toys & Games | $991.94 | 280 | ★ 0.8 | 80 | BULK-1f6c042c |
| 21503 | Bulk Product f8490551 | Electronics | $446.30 | 291 | ★ 4.3 | 2 | BULK-6bab0a2a |
| 21504 | Bulk Product 722bc68d | Home & Garden | $801.00 | 335 | ★ 0.6 | 15 | BULK-fc486360 |
| 21505 | Bulk Product 23f2a934 | Toys & Games | $754.09 | 27 | ★ 4.1 | 59 | BULK-d8b07957 |
| 21506 | Bulk Product a41adc6b | Electronics | $166.56 | 362 | ★ 3.4 | 58 | BULK-f5d176c7 |
| 21507 | Bulk Product 6884d73e | Sports & Outdoors | $242.34 | 100 | ★ 2.0 | 72 | BULK-5affd2d9 |
| 21508 | Bulk Product a1f14475 | Toys & Games | $53.26 | 12 | ★ 3.0 | 31 | BULK-5e42558a |
| 21509 | Bulk Product 9a928c07 | Toys & Games | $516.37 | 424 | ★ 3.9 | 77 | BULK-660a2b2c |
// 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
};
}