Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 11260 | Bulk Product 091a8d30 | Books | $119.61 | 128 | ★ 4.0 | 90 | BULK-5591bef2 |
| 11261 | Bulk Product 9aae7701 | Books | $747.79 | 294 | ★ 0.4 | 29 | BULK-31ac6bd7 |
| 11262 | Bulk Product 9623f77c | Books | $660.92 | 69 | ★ 1.3 | 48 | BULK-9c0bcb6c |
| 11263 | Bulk Product d624c7b0 | Books | $298.01 | 160 | ★ 0.8 | 97 | BULK-f4eb1733 |
| 11264 | Bulk Product 99707142 | Clothing | $360.48 | 361 | ★ 0.2 | 90 | BULK-291b97b5 |
| 11265 | Bulk Product 22fc9b53 | Clothing | $229.37 | 397 | ★ 2.5 | 57 | BULK-b5db0de3 |
| 11266 | Bulk Product 379951ac | Toys & Games | $639.05 | 481 | ★ 4.6 | 51 | BULK-e36e4e49 |
| 11267 | Bulk Product 0f604b11 | Home & Garden | $894.31 | 65 | ★ 4.2 | 98 | BULK-b30c6fd4 |
| 11268 | Bulk Product a692985d | Home & Garden | $569.10 | 342 | ★ 0.8 | 88 | BULK-e15e88c9 |
| 11269 | Bulk Product c73778e0 | Home & Garden | $264.13 | 155 | ★ 4.6 | 93 | BULK-32ab552b |
| 11270 | Bulk Product 08f95aa1 | Home & Garden | $948.13 | 272 | ★ 1.5 | 29 | BULK-7a58f9d6 |
| 11271 | Bulk Product a1707a66 | Toys & Games | $155.18 | 352 | ★ 2.6 | 47 | BULK-16b5ed70 |
| 11272 | Bulk Product e9bf68f8 | Toys & Games | $340.93 | 219 | ★ 0.8 | 8 | BULK-e10d8965 |
| 11273 | Bulk Product 62869a5e | Toys & Games | $867.04 | 312 | ★ 3.1 | 71 | BULK-53d4bf36 |
| 11274 | Bulk Product 86d41bbd | Books | $987.73 | 37 | ★ 2.6 | 8 | BULK-40a78bad |
| 11275 | Bulk Product e5ea2884 | Sports & Outdoors | $204.81 | 482 | ★ 0.8 | 0 | BULK-57e59e23 |
| 11276 | Bulk Product 9d1a508e | Electronics | $814.26 | 361 | ★ 2.7 | 52 | BULK-e581b7b8 |
| 11277 | Bulk Product 3e5b8214 | Electronics | $283.28 | 320 | ★ 0.8 | 3 | BULK-5bd7f61b |
| 11278 | Bulk Product 2efe1d3a | Toys & Games | $741.87 | 423 | ★ 4.6 | 57 | BULK-d683a876 |
| 11279 | Bulk Product 385991f1 | Clothing | $935.49 | 27 | ★ 4.3 | 78 | BULK-fa503e45 |
| 11280 | Bulk Product 040c2efe | Electronics | $608.81 | 493 | ★ 1.6 | 33 | BULK-d74dd5a0 |
| 11281 | Bulk Product 13120799 | Books | $286.27 | 119 | ★ 4.3 | 2 | BULK-98c69fa8 |
| 11282 | Bulk Product 10734b2a | Books | $552.90 | 483 | ★ 4.6 | 70 | BULK-4fab269b |
| 11283 | Bulk Product eb5f56be | Home & Garden | $719.11 | 391 | ★ 3.6 | 77 | BULK-831a9bb9 |
| 11284 | Bulk Product eac3bf6f | Home & Garden | $287.69 | 413 | ★ 2.0 | 80 | BULK-8c1f5cb4 |
| 11285 | Bulk Product 53ba9cc9 | Clothing | $136.87 | 395 | ★ 3.8 | 53 | BULK-a8ac26e8 |
| 11286 | Bulk Product f5b69bdd | Home & Garden | $89.96 | 37 | ★ 1.9 | 63 | BULK-723227f3 |
| 11287 | Bulk Product 8fd37b2c | Clothing | $355.26 | 17 | ★ 0.9 | 2 | BULK-cc18988b |
| 11288 | Bulk Product 7dc3fbae | Toys & Games | $1,009.93 | 416 | ★ 4.4 | 84 | BULK-d9fd61fa |
| 11289 | Bulk Product d68290b9 | Toys & Games | $339.76 | 22 | ★ 1.0 | 81 | BULK-9dcfb8fd |
| 11290 | Bulk Product 84dbe2af | Books | $34.89 | 74 | ★ 1.5 | 67 | BULK-551248cb |
| 11291 | Bulk Product a94536df | Electronics | $228.34 | 149 | ★ 0.1 | 4 | BULK-a6dc2d30 |
| 11292 | Bulk Product 41f8eabf | Clothing | $713.88 | 160 | ★ 3.0 | 36 | BULK-c4f82762 |
| 11293 | Bulk Product df1b0881 | Home & Garden | $494.67 | 60 | ★ 0.7 | 96 | BULK-40022cea |
| 11294 | Bulk Product ec09664e | Sports & Outdoors | $553.55 | 359 | ★ 4.2 | 65 | BULK-c567a464 |
| 11295 | Bulk Product 842d97a2 | Books | $341.38 | 219 | ★ 4.4 | 44 | BULK-2de01958 |
| 11296 | Bulk Product dffd2a6c | Electronics | $786.61 | 380 | ★ 4.8 | 73 | BULK-54aed59e |
| 11297 | Bulk Product 08f8149b | Toys & Games | $123.80 | 357 | ★ 1.8 | 94 | BULK-9287edca |
| 11298 | Bulk Product f21125b2 | Toys & Games | $19.98 | 389 | ★ 4.7 | 95 | BULK-eacc1a06 |
| 11299 | Bulk Product 305c788e | Toys & Games | $900.98 | 171 | ★ 0.7 | 50 | BULK-89dd80bb |
| 11300 | Bulk Product edfe3fe9 | Clothing | $74.20 | 413 | ★ 3.9 | 94 | BULK-fb3bd5c5 |
| 11301 | Bulk Product e90743ca | Home & Garden | $118.94 | 246 | ★ 2.0 | 90 | BULK-cbdcfe22 |
| 11302 | Bulk Product 25fa6f21 | Electronics | $61.62 | 169 | ★ 4.4 | 59 | BULK-b78318c3 |
| 11303 | Bulk Product f5309f22 | Home & Garden | $522.54 | 276 | ★ 1.8 | 32 | BULK-dc67989e |
| 11304 | Bulk Product 6443dc87 | Sports & Outdoors | $617.50 | 185 | ★ 4.3 | 31 | BULK-13d161e4 |
| 11305 | Bulk Product 3819cc0c | Books | $736.09 | 288 | ★ 0.3 | 59 | BULK-2c1a92b6 |
| 11306 | Bulk Product 0a362230 | Electronics | $547.77 | 485 | ★ 4.1 | 54 | BULK-7ee1b201 |
| 11307 | Bulk Product 5abc8eb1 | Home & Garden | $528.14 | 258 | ★ 3.8 | 19 | BULK-f0998060 |
| 11308 | Bulk Product 9144cb58 | Clothing | $800.73 | 484 | ★ 4.5 | 95 | BULK-117a8a2c |
| 11309 | Bulk Product bda4b5d9 | Clothing | $976.85 | 333 | ★ 4.1 | 67 | BULK-dc9d6773 |
// 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
};
}