Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 9660 | Bulk Product c0cda2fa | Home & Garden | $997.72 | 133 | ★ 0.9 | 51 | BULK-f990448d |
| 9661 | Bulk Product 2649d567 | Sports & Outdoors | $358.60 | 80 | ★ 4.9 | 2 | BULK-ff225fa3 |
| 9662 | Bulk Product 9082164a | Toys & Games | $921.48 | 425 | ★ 3.0 | 61 | BULK-f35ca15c |
| 9663 | Bulk Product 95ee0447 | Home & Garden | $337.60 | 363 | ★ 4.8 | 62 | BULK-e547d615 |
| 9664 | Bulk Product 419bf8da | Electronics | $221.82 | 496 | ★ 4.8 | 35 | BULK-520873bc |
| 9665 | Bulk Product a4ce7a39 | Sports & Outdoors | $699.66 | 373 | ★ 2.9 | 67 | BULK-be5e7bec |
| 9666 | Bulk Product dee6daaf | Books | $369.04 | 410 | ★ 3.0 | 56 | BULK-2fe6409b |
| 9667 | Bulk Product fbf680bc | Home & Garden | $669.36 | 374 | ★ 4.3 | 3 | BULK-538b3542 |
| 9668 | Bulk Product 201bfd3f | Books | $112.46 | 59 | ★ 1.7 | 42 | BULK-46775746 |
| 9669 | Bulk Product 2389fdc7 | Home & Garden | $956.68 | 258 | ★ 3.0 | 55 | BULK-ff152363 |
| 9670 | Bulk Product 7598797c | Sports & Outdoors | $464.06 | 391 | ★ 2.1 | 35 | BULK-81496685 |
| 9671 | Bulk Product 24927993 | Electronics | $422.38 | 215 | ★ 0.1 | 54 | BULK-35b2f197 |
| 9672 | Bulk Product 6150bc11 | Clothing | $964.52 | 5 | ★ 1.0 | 46 | BULK-5fde6424 |
| 9673 | Bulk Product 82044025 | Books | $800.80 | 497 | ★ 1.8 | 86 | BULK-0cc2597c |
| 9674 | Bulk Product 3e1e8a7f | Toys & Games | $36.46 | 145 | ★ 3.1 | 23 | BULK-a7b86bec |
| 9675 | Bulk Product 2e7b01e1 | Clothing | $246.56 | 141 | ★ 0.2 | 73 | BULK-c1cb871b |
| 9676 | Bulk Product 0d42982d | Toys & Games | $863.67 | 426 | ★ 0.9 | 33 | BULK-c8377af6 |
| 9677 | Bulk Product a9fbe449 | Electronics | $843.86 | 116 | ★ 3.8 | 1 | BULK-4632d80a |
| 9678 | Bulk Product f1b0161b | Books | $612.39 | 20 | ★ 3.6 | 43 | BULK-73a683cc |
| 9679 | Bulk Product f0985e91 | Books | $529.34 | 46 | ★ 2.0 | 84 | BULK-fc913c98 |
| 9680 | Bulk Product f9520895 | Home & Garden | $945.80 | 29 | ★ 3.8 | 7 | BULK-1415e702 |
| 9681 | Bulk Product 518b4ed7 | Home & Garden | $870.24 | 210 | ★ 3.7 | 65 | BULK-5433bca8 |
| 9682 | Bulk Product aa9545c3 | Clothing | $705.62 | 116 | ★ 2.7 | 92 | BULK-b849a5c8 |
| 9683 | Bulk Product 8eea5033 | Books | $978.15 | 169 | ★ 3.6 | 69 | BULK-2999dd37 |
| 9684 | Bulk Product 43de0fe0 | Books | $867.46 | 161 | ★ 2.1 | 27 | BULK-31ac7697 |
| 9685 | Bulk Product 6b3c73e1 | Books | $422.60 | 332 | ★ 0.7 | 91 | BULK-346ff453 |
| 9686 | Bulk Product 468957cc | Home & Garden | $691.02 | 99 | ★ 0.9 | 65 | BULK-6b0e23ab |
| 9687 | Bulk Product 22442674 | Clothing | $752.87 | 271 | ★ 2.3 | 3 | BULK-9d55656d |
| 9688 | Bulk Product 7ef95401 | Electronics | $643.57 | 76 | ★ 0.5 | 8 | BULK-6b795668 |
| 9689 | Bulk Product 0a75e332 | Sports & Outdoors | $507.78 | 165 | ★ 1.0 | 20 | BULK-c483cfca |
| 9690 | Bulk Product 65937373 | Electronics | $116.41 | 124 | ★ 4.2 | 39 | BULK-74a0874c |
| 9691 | Bulk Product c4196112 | Home & Garden | $618.97 | 132 | ★ 4.5 | 47 | BULK-9262786a |
| 9692 | Bulk Product 35ff580d | Sports & Outdoors | $144.76 | 301 | ★ 0.1 | 44 | BULK-47e7ce8c |
| 9693 | Bulk Product b148f8e2 | Clothing | $76.36 | 409 | ★ 2.1 | 55 | BULK-879fb4e8 |
| 9694 | Bulk Product 171c29e2 | Sports & Outdoors | $504.66 | 284 | ★ 4.9 | 37 | BULK-690eaf1a |
| 9695 | Bulk Product 2822e969 | Clothing | $737.34 | 0 | ★ 1.0 | 81 | BULK-e5bef0c7 |
| 9696 | Bulk Product 96b3ad62 | Home & Garden | $179.98 | 13 | ★ 1.8 | 47 | BULK-14b12ded |
| 9697 | Bulk Product 61dabf51 | Home & Garden | $419.47 | 485 | ★ 2.4 | 4 | BULK-b25978aa |
| 9698 | Bulk Product 2d63df3e | Electronics | $846.22 | 217 | ★ 3.6 | 28 | BULK-9d7feb32 |
| 9699 | Bulk Product fc5a7802 | Electronics | $707.08 | 36 | ★ 2.3 | 26 | BULK-0ec6ba7c |
| 9700 | Bulk Product 8aa4f87f | Toys & Games | $32.58 | 154 | ★ 0.3 | 72 | BULK-5d1c547d |
| 9701 | Bulk Product 527fc001 | Toys & Games | $905.04 | 158 | ★ 1.0 | 77 | BULK-62d1a3a9 |
| 9702 | Bulk Product b9ecd788 | Toys & Games | $729.03 | 306 | ★ 3.4 | 46 | BULK-08fde135 |
| 9703 | Bulk Product 1456273d | Books | $666.85 | 104 | ★ 3.5 | 49 | BULK-8dbeb247 |
| 9704 | Bulk Product d7495972 | Sports & Outdoors | $230.15 | 95 | ★ 0.5 | 95 | BULK-ec38b2e4 |
| 9705 | Bulk Product 1f528e57 | Toys & Games | $981.06 | 29 | ★ 1.8 | 17 | BULK-37d952fd |
| 9706 | Bulk Product 18e91336 | Sports & Outdoors | $867.72 | 405 | ★ 3.9 | 76 | BULK-03aa0a0e |
| 9707 | Bulk Product 49c287df | Clothing | $494.38 | 205 | ★ 3.2 | 91 | BULK-8aa94483 |
| 9708 | Bulk Product e1a149b0 | Sports & Outdoors | $897.13 | 403 | ★ 0.8 | 17 | BULK-e2d1dc24 |
| 9709 | Bulk Product dcb0f9f7 | Books | $915.67 | 371 | ★ 4.3 | 74 | BULK-90c0faac |
// 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
};
}