Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 22560 | Bulk Product fdb65472 | Clothing | $922.81 | 51 | ★ 1.2 | 16 | BULK-9989706e |
| 22561 | Bulk Product a57bfe93 | Books | $127.72 | 438 | ★ 4.4 | 52 | BULK-9a449239 |
| 22562 | Bulk Product 4c696d33 | Toys & Games | $32.11 | 120 | ★ 3.1 | 14 | BULK-c7ad2ff9 |
| 22563 | Bulk Product 1f6f8627 | Electronics | $528.90 | 362 | ★ 3.7 | 44 | BULK-97e1f3ce |
| 22564 | Bulk Product b9f4fb56 | Toys & Games | $119.97 | 206 | ★ 2.1 | 38 | BULK-1bd52624 |
| 22565 | Bulk Product 0b1a8bad | Electronics | $272.31 | 51 | ★ 1.2 | 17 | BULK-ba43f903 |
| 22566 | Bulk Product ad11f312 | Home & Garden | $928.15 | 185 | ★ 2.5 | 88 | BULK-07a391d5 |
| 22567 | Bulk Product 6646c5dc | Home & Garden | $622.34 | 390 | ★ 1.5 | 29 | BULK-64714223 |
| 22568 | Bulk Product 0c446e70 | Clothing | $98.48 | 188 | ★ 1.1 | 69 | BULK-0d1af4d4 |
| 22569 | Bulk Product f8aa9632 | Home & Garden | $837.73 | 299 | ★ 1.0 | 10 | BULK-6f1859d4 |
| 22570 | Bulk Product 237a7479 | Sports & Outdoors | $755.22 | 447 | ★ 1.9 | 34 | BULK-5af63d25 |
| 22571 | Bulk Product ff39d50e | Sports & Outdoors | $439.70 | 274 | ★ 0.7 | 16 | BULK-c19f7b3c |
| 22572 | Bulk Product 29b936ab | Home & Garden | $435.67 | 481 | ★ 3.7 | 22 | BULK-3225a6e5 |
| 22573 | Bulk Product e3defcc6 | Books | $347.14 | 17 | ★ 3.3 | 45 | BULK-cff27d3a |
| 22574 | Bulk Product c638a7fd | Electronics | $525.56 | 168 | ★ 2.1 | 66 | BULK-f531cf87 |
| 22575 | Bulk Product 52e3f060 | Sports & Outdoors | $282.07 | 478 | ★ 0.6 | 18 | BULK-9519d225 |
| 22576 | Bulk Product bfa0c616 | Toys & Games | $838.44 | 145 | ★ 1.2 | 23 | BULK-2fe7d85e |
| 22577 | Bulk Product 45dbf2b1 | Electronics | $821.55 | 105 | ★ 3.4 | 72 | BULK-34e2d50a |
| 22578 | Bulk Product 88dc175b | Books | $81.81 | 396 | ★ 3.7 | 28 | BULK-50f9a263 |
| 22579 | Bulk Product 71627ba0 | Sports & Outdoors | $463.29 | 425 | ★ 3.9 | 69 | BULK-3ecceabf |
| 22580 | Bulk Product edd53130 | Sports & Outdoors | $972.36 | 73 | ★ 4.6 | 78 | BULK-ea2155a6 |
| 22581 | Bulk Product 728e3570 | Toys & Games | $870.60 | 333 | ★ 0.3 | 39 | BULK-d1d38d39 |
| 22582 | Bulk Product f1280575 | Electronics | $928.71 | 465 | ★ 3.0 | 6 | BULK-a86c57cc |
| 22583 | Bulk Product 9515d2f6 | Electronics | $595.23 | 308 | ★ 4.0 | 96 | BULK-22701e80 |
| 22584 | Bulk Product 99b80535 | Toys & Games | $945.91 | 406 | ★ 1.7 | 52 | BULK-41b08225 |
| 22585 | Bulk Product 6ad3e7ea | Home & Garden | $585.11 | 66 | ★ 1.4 | 23 | BULK-573b9c4b |
| 22586 | Bulk Product 26e7d863 | Home & Garden | $751.10 | 175 | ★ 0.1 | 85 | BULK-67ec7290 |
| 22587 | Bulk Product e4566af4 | Electronics | $630.65 | 78 | ★ 4.5 | 38 | BULK-1d117869 |
| 22588 | Bulk Product 71c33cd3 | Sports & Outdoors | $795.25 | 0 | ★ 3.4 | 31 | BULK-bf7dc47c |
| 22589 | Bulk Product 0b4240bb | Electronics | $635.25 | 188 | ★ 0.0 | 99 | BULK-e24e99cf |
| 22590 | Bulk Product 41912047 | Toys & Games | $198.81 | 399 | ★ 1.5 | 1 | BULK-e8a9b85a |
| 22591 | Bulk Product d5559296 | Home & Garden | $141.94 | 396 | ★ 1.6 | 41 | BULK-701ee05d |
| 22592 | Bulk Product ba5b3891 | Home & Garden | $131.38 | 321 | ★ 2.6 | 4 | BULK-33e7dae6 |
| 22593 | Bulk Product ca40f870 | Books | $641.59 | 131 | ★ 3.2 | 54 | BULK-6221e7e0 |
| 22594 | Bulk Product b7e2d67f | Electronics | $352.24 | 338 | ★ 3.3 | 54 | BULK-9689449b |
| 22595 | Bulk Product 326aa636 | Electronics | $59.65 | 266 | ★ 2.0 | 26 | BULK-9a66cb7b |
| 22596 | Bulk Product 2bff67dc | Home & Garden | $844.48 | 260 | ★ 2.3 | 91 | BULK-a98172db |
| 22597 | Bulk Product 219ed01e | Clothing | $239.87 | 335 | ★ 1.8 | 54 | BULK-01e7c652 |
| 22598 | Bulk Product fee8ace4 | Books | $645.35 | 50 | ★ 2.5 | 79 | BULK-a815aba5 |
| 22599 | Bulk Product 6eaaacc0 | Books | $422.17 | 307 | ★ 4.7 | 0 | BULK-99e183ae |
| 22600 | Bulk Product 18547e85 | Books | $482.87 | 389 | ★ 1.1 | 25 | BULK-828581dc |
| 22601 | Bulk Product 742f30e4 | Home & Garden | $989.85 | 171 | ★ 4.7 | 67 | BULK-58e741aa |
| 22602 | Bulk Product 4f6cb9eb | Home & Garden | $681.78 | 98 | ★ 4.2 | 46 | BULK-f979dba4 |
| 22603 | Bulk Product 437e1a13 | Clothing | $790.89 | 448 | ★ 4.9 | 53 | BULK-97801fe2 |
| 22604 | Bulk Product cdb1ee0e | Home & Garden | $131.71 | 313 | ★ 0.4 | 24 | BULK-6428f5a9 |
| 22605 | Bulk Product eacf7abe | Books | $129.94 | 190 | ★ 0.5 | 6 | BULK-9d602f7b |
| 22606 | Bulk Product 353a5fd1 | Home & Garden | $487.80 | 140 | ★ 1.8 | 42 | BULK-b98b9803 |
| 22607 | Bulk Product 81655b85 | Toys & Games | $37.71 | 113 | ★ 4.1 | 21 | BULK-07aa2745 |
| 22608 | Bulk Product c0c7508d | Home & Garden | $797.52 | 32 | ★ 1.2 | 5 | BULK-cc1a54ac |
| 22609 | Bulk Product 454d1a0f | Books | $140.07 | 334 | ★ 1.7 | 79 | BULK-2864a781 |
// 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
};
}