Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 22660 | Bulk Product 3456b475 | Clothing | $782.68 | 468 | ★ 1.7 | 70 | BULK-63c9991d |
| 22661 | Bulk Product 75ce57e1 | Sports & Outdoors | $938.91 | 348 | ★ 1.4 | 5 | BULK-b482475d |
| 22662 | Bulk Product d2e4945c | Clothing | $574.09 | 489 | ★ 2.4 | 15 | BULK-9f10fa69 |
| 22663 | Bulk Product 44749aa6 | Toys & Games | $268.03 | 135 | ★ 0.0 | 21 | BULK-16e585aa |
| 22664 | Bulk Product f4388c19 | Sports & Outdoors | $944.63 | 468 | ★ 4.9 | 76 | BULK-49a9e365 |
| 22665 | Bulk Product fcbc940c | Books | $862.27 | 432 | ★ 1.9 | 16 | BULK-723f9982 |
| 22666 | Bulk Product ee6dd752 | Home & Garden | $519.98 | 380 | ★ 3.2 | 24 | BULK-e8a8b385 |
| 22667 | Bulk Product ead33b58 | Toys & Games | $72.49 | 483 | ★ 0.5 | 65 | BULK-e44802c1 |
| 22668 | Bulk Product dfb11c83 | Electronics | $122.43 | 203 | ★ 4.2 | 53 | BULK-9ae71355 |
| 22669 | Bulk Product 05f74982 | Toys & Games | $342.87 | 114 | ★ 0.7 | 93 | BULK-339c088b |
| 22670 | Bulk Product 17dad11b | Home & Garden | $982.49 | 203 | ★ 4.6 | 32 | BULK-8020e111 |
| 22671 | Bulk Product d955b2e5 | Sports & Outdoors | $1,002.83 | 64 | ★ 1.6 | 90 | BULK-15b40e03 |
| 22672 | Bulk Product 4f9bc504 | Sports & Outdoors | $549.76 | 327 | ★ 2.3 | 43 | BULK-354779d3 |
| 22673 | Bulk Product b19843c8 | Home & Garden | $584.62 | 495 | ★ 3.0 | 54 | BULK-944f4de4 |
| 22674 | Bulk Product 3a75d97a | Clothing | $137.38 | 145 | ★ 3.1 | 6 | BULK-2882a22d |
| 22675 | Bulk Product 3275123b | Books | $771.83 | 451 | ★ 2.5 | 51 | BULK-b9f175bb |
| 22676 | Bulk Product dc56f604 | Clothing | $118.47 | 327 | ★ 2.5 | 2 | BULK-4af12eac |
| 22677 | Bulk Product 392ad357 | Books | $163.07 | 196 | ★ 3.5 | 68 | BULK-ad86627b |
| 22678 | Bulk Product 976a8301 | Clothing | $85.99 | 276 | ★ 2.0 | 32 | BULK-edaae9c3 |
| 22679 | Bulk Product bc372a3a | Electronics | $556.84 | 272 | ★ 3.1 | 31 | BULK-1d900d37 |
| 22680 | Bulk Product 99535c5b | Sports & Outdoors | $218.11 | 6 | ★ 3.2 | 44 | BULK-266a7866 |
| 22681 | Bulk Product 7a37d1d9 | Toys & Games | $709.71 | 103 | ★ 0.9 | 74 | BULK-14045020 |
| 22682 | Bulk Product 76e42ed1 | Toys & Games | $524.31 | 380 | ★ 1.2 | 25 | BULK-c00dd572 |
| 22683 | Bulk Product 27fc41cb | Toys & Games | $228.48 | 8 | ★ 1.5 | 65 | BULK-f9a9d658 |
| 22684 | Bulk Product 8cf462ae | Sports & Outdoors | $333.86 | 279 | ★ 4.0 | 7 | BULK-79400eae |
| 22685 | Bulk Product 9cd56e84 | Toys & Games | $650.02 | 387 | ★ 0.5 | 86 | BULK-9f021dcf |
| 22686 | Bulk Product daed61c1 | Home & Garden | $333.38 | 130 | ★ 2.5 | 30 | BULK-7d5445d1 |
| 22687 | Bulk Product ed6c785d | Books | $374.28 | 404 | ★ 1.9 | 79 | BULK-12eb91cd |
| 22688 | Bulk Product dc98933f | Clothing | $819.43 | 396 | ★ 2.5 | 7 | BULK-d390cb21 |
| 22689 | Bulk Product 491dd14a | Home & Garden | $724.45 | 378 | ★ 2.4 | 53 | BULK-c1c6890f |
| 22690 | Bulk Product b53e8a5c | Home & Garden | $633.97 | 150 | ★ 3.5 | 59 | BULK-5fa0b7d4 |
| 22691 | Bulk Product 6c26892e | Home & Garden | $454.09 | 189 | ★ 2.0 | 77 | BULK-6c155e8d |
| 22692 | Bulk Product de171ff2 | Toys & Games | $238.13 | 105 | ★ 1.9 | 28 | BULK-3aac00c6 |
| 22693 | Bulk Product 3f25099d | Sports & Outdoors | $430.52 | 307 | ★ 2.3 | 10 | BULK-497b7ce1 |
| 22694 | Bulk Product 07b90f5a | Home & Garden | $87.48 | 492 | ★ 4.6 | 84 | BULK-8fae9943 |
| 22695 | Bulk Product 2a923db2 | Electronics | $45.40 | 20 | ★ 2.8 | 42 | BULK-e36077d2 |
| 22696 | Bulk Product 7bfb7c55 | Clothing | $356.24 | 0 | ★ 4.4 | 8 | BULK-c63816a0 |
| 22697 | Bulk Product e3016e5a | Toys & Games | $654.35 | 232 | ★ 4.6 | 54 | BULK-a9e6b6ee |
| 22698 | Bulk Product ff7b03ad | Books | $264.81 | 346 | ★ 4.5 | 12 | BULK-23ee033d |
| 22699 | Bulk Product 7b8f6477 | Sports & Outdoors | $833.16 | 42 | ★ 1.4 | 37 | BULK-ea5bd452 |
| 22700 | Bulk Product 156ab0d8 | Books | $675.87 | 252 | ★ 2.1 | 25 | BULK-1b0a2782 |
| 22701 | Bulk Product 3a6ec443 | Sports & Outdoors | $412.28 | 368 | ★ 4.6 | 85 | BULK-1e7d658d |
| 22702 | Bulk Product 4055a3a7 | Books | $823.68 | 236 | ★ 0.3 | 18 | BULK-ec9d4307 |
| 22703 | Bulk Product 6fcdfeee | Home & Garden | $149.46 | 185 | ★ 0.5 | 47 | BULK-17b4100d |
| 22704 | Bulk Product 33f3fd21 | Home & Garden | $335.55 | 472 | ★ 4.8 | 42 | BULK-1f5bacda |
| 22705 | Bulk Product f25e5eb9 | Books | $412.83 | 103 | ★ 1.9 | 8 | BULK-030e79c2 |
| 22706 | Bulk Product 4a5edfb6 | Clothing | $88.32 | 395 | ★ 3.1 | 3 | BULK-e8ef3731 |
| 22707 | Bulk Product df81e2ae | Home & Garden | $429.36 | 196 | ★ 0.3 | 96 | BULK-c573be2e |
| 22708 | Bulk Product 5b678382 | Toys & Games | $49.43 | 96 | ★ 3.4 | 94 | BULK-9432f332 |
| 22709 | Bulk Product ee96ea55 | Books | $348.37 | 361 | ★ 4.5 | 84 | BULK-a259e881 |
// 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
};
}