Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 15510 | Bulk Product d1a3b896 | Toys & Games | $888.91 | 13 | ★ 2.7 | 60 | BULK-f1aaff3e |
| 15511 | Bulk Product 32c3f96a | Electronics | $77.00 | 496 | ★ 3.4 | 35 | BULK-1a6962f1 |
| 15512 | Bulk Product b5d09918 | Clothing | $658.24 | 66 | ★ 1.5 | 40 | BULK-923f3747 |
| 15513 | Bulk Product ada944fe | Home & Garden | $954.97 | 126 | ★ 3.4 | 44 | BULK-2116a8e0 |
| 15514 | Bulk Product 3cf5c15d | Home & Garden | $646.01 | 147 | ★ 3.1 | 63 | BULK-a00534a7 |
| 15515 | Bulk Product a9557034 | Clothing | $199.07 | 330 | ★ 2.4 | 46 | BULK-33d1dccc |
| 15516 | Bulk Product bab9ff2c | Sports & Outdoors | $622.49 | 253 | ★ 2.3 | 0 | BULK-f91a2d84 |
| 15517 | Bulk Product 1401d9a8 | Clothing | $270.69 | 270 | ★ 0.6 | 87 | BULK-deca7670 |
| 15518 | Bulk Product f79ab4f4 | Electronics | $683.61 | 377 | ★ 0.5 | 30 | BULK-05bc81bd |
| 15519 | Bulk Product f2a78dee | Books | $153.95 | 362 | ★ 2.2 | 15 | BULK-8d7d5676 |
| 15520 | Bulk Product b62d8e9f | Clothing | $300.12 | 475 | ★ 3.7 | 9 | BULK-1da007d5 |
| 15521 | Bulk Product a9f784fd | Home & Garden | $152.39 | 117 | ★ 2.9 | 48 | BULK-daa0b9b4 |
| 15522 | Bulk Product 487595e7 | Clothing | $203.87 | 256 | ★ 3.9 | 29 | BULK-ee04e23e |
| 15523 | Bulk Product 586c344e | Electronics | $572.69 | 269 | ★ 0.5 | 70 | BULK-257a7600 |
| 15524 | Bulk Product d4f2cb48 | Clothing | $537.74 | 359 | ★ 0.4 | 57 | BULK-4c2fcebd |
| 15525 | Bulk Product bde02f9b | Toys & Games | $874.77 | 121 | ★ 2.7 | 30 | BULK-22b41d4e |
| 15526 | Bulk Product b5b40b67 | Books | $401.73 | 104 | ★ 3.8 | 92 | BULK-aa0aff8f |
| 15527 | Bulk Product b56fe42b | Books | $917.84 | 402 | ★ 1.7 | 47 | BULK-f432414b |
| 15528 | Bulk Product 9c1d3065 | Toys & Games | $795.04 | 344 | ★ 0.6 | 3 | BULK-94e65833 |
| 15529 | Bulk Product 2b0d11cf | Home & Garden | $475.81 | 147 | ★ 1.9 | 71 | BULK-37f9e960 |
| 15530 | Bulk Product c9e497ff | Electronics | $68.83 | 385 | ★ 0.3 | 6 | BULK-549cbb20 |
| 15531 | Bulk Product e2f0bcf7 | Clothing | $611.39 | 479 | ★ 1.3 | 35 | BULK-bad4c19b |
| 15532 | Bulk Product 3f80287a | Sports & Outdoors | $908.27 | 58 | ★ 0.1 | 17 | BULK-e67d30cb |
| 15533 | Bulk Product 9bca4712 | Home & Garden | $601.49 | 80 | ★ 3.0 | 69 | BULK-650dad58 |
| 15534 | Bulk Product 5f1a93b2 | Toys & Games | $701.39 | 494 | ★ 4.3 | 41 | BULK-fd5d1799 |
| 15535 | Bulk Product d20cb10c | Electronics | $491.11 | 165 | ★ 1.5 | 46 | BULK-2ab3cf56 |
| 15536 | Bulk Product 1bb34fbf | Toys & Games | $499.30 | 209 | ★ 2.3 | 47 | BULK-d6739aa6 |
| 15537 | Bulk Product cd0f4e9f | Books | $703.05 | 461 | ★ 4.6 | 37 | BULK-e98cda34 |
| 15538 | Bulk Product fcfbbafe | Sports & Outdoors | $744.33 | 16 | ★ 1.7 | 31 | BULK-87c51839 |
| 15539 | Bulk Product 32561bcd | Home & Garden | $551.12 | 289 | ★ 0.5 | 7 | BULK-51d9db21 |
| 15540 | Bulk Product c00ed6e7 | Toys & Games | $90.54 | 304 | ★ 3.9 | 17 | BULK-bf23e289 |
| 15541 | Bulk Product 50489817 | Home & Garden | $669.46 | 78 | ★ 1.4 | 2 | BULK-0e6969ee |
| 15542 | Bulk Product b0c10708 | Clothing | $852.97 | 417 | ★ 3.5 | 71 | BULK-2135720c |
| 15543 | Bulk Product b4f334f3 | Sports & Outdoors | $421.30 | 289 | ★ 2.3 | 42 | BULK-d9488306 |
| 15544 | Bulk Product a2d72847 | Electronics | $206.36 | 52 | ★ 4.0 | 4 | BULK-c5fa4d58 |
| 15545 | Bulk Product 42845e66 | Toys & Games | $289.70 | 66 | ★ 2.3 | 16 | BULK-2c14cadd |
| 15546 | Bulk Product 91519574 | Toys & Games | $653.29 | 171 | ★ 2.2 | 78 | BULK-50ff2362 |
| 15547 | Bulk Product 1bb70cbe | Clothing | $408.08 | 396 | ★ 3.1 | 44 | BULK-cd1b1946 |
| 15548 | Bulk Product 5873ca0e | Books | $902.08 | 489 | ★ 2.1 | 58 | BULK-7784a741 |
| 15549 | Bulk Product 3342a975 | Sports & Outdoors | $603.11 | 284 | ★ 2.7 | 11 | BULK-ba7811c2 |
| 15550 | Bulk Product 91d93279 | Sports & Outdoors | $797.59 | 189 | ★ 3.4 | 29 | BULK-7180f9a8 |
| 15551 | Bulk Product e609b8a3 | Books | $405.97 | 53 | ★ 2.3 | 12 | BULK-0e74d248 |
| 15552 | Bulk Product 8cd59695 | Books | $598.34 | 261 | ★ 1.9 | 32 | BULK-52be4589 |
| 15553 | Bulk Product b50c06eb | Electronics | $64.40 | 294 | ★ 1.0 | 64 | BULK-de1058c2 |
| 15554 | Bulk Product b5ea9bdb | Home & Garden | $691.83 | 96 | ★ 2.0 | 74 | BULK-a0627b17 |
| 15555 | Bulk Product a8ffe93c | Electronics | $514.41 | 315 | ★ 4.0 | 5 | BULK-43686944 |
| 15556 | Bulk Product 0729ae98 | Books | $420.93 | 300 | ★ 1.3 | 69 | BULK-7866ec59 |
| 15557 | Bulk Product 365fa373 | Home & Garden | $99.23 | 126 | ★ 4.9 | 63 | BULK-bd46f6f5 |
| 15558 | Bulk Product 5098085c | Electronics | $520.43 | 497 | ★ 0.3 | 97 | BULK-08677ef9 |
| 15559 | Bulk Product da1263c0 | Toys & Games | $869.72 | 357 | ★ 1.6 | 96 | BULK-386e4524 |
// 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
};
}