Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 18410 | Bulk Product 61f2665f | Books | $189.96 | 245 | ★ 2.6 | 42 | BULK-b5a603e3 |
| 18411 | Bulk Product e6f0bf60 | Toys & Games | $499.50 | 22 | ★ 3.4 | 16 | BULK-7e0955ad |
| 18412 | Bulk Product fb2729d8 | Sports & Outdoors | $326.32 | 464 | ★ 3.1 | 34 | BULK-293cf777 |
| 18413 | Bulk Product ddc13a35 | Home & Garden | $805.40 | 401 | ★ 1.8 | 70 | BULK-db74f3a3 |
| 18414 | Bulk Product c98c75fb | Books | $548.49 | 472 | ★ 1.6 | 75 | BULK-df843f4b |
| 18415 | Bulk Product 5e4ed877 | Toys & Games | $399.59 | 219 | ★ 3.2 | 50 | BULK-4d055048 |
| 18416 | Bulk Product e6c4a19e | Sports & Outdoors | $635.33 | 466 | ★ 3.8 | 85 | BULK-e38c83ce |
| 18417 | Bulk Product 1f4761d1 | Toys & Games | $803.35 | 174 | ★ 4.3 | 82 | BULK-24cc14ca |
| 18418 | Bulk Product c25d6059 | Toys & Games | $800.57 | 341 | ★ 4.8 | 9 | BULK-047dd2d9 |
| 18419 | Bulk Product c763e128 | Electronics | $176.30 | 316 | ★ 4.0 | 59 | BULK-79f7479c |
| 18420 | Bulk Product 3616da44 | Home & Garden | $37.33 | 465 | ★ 4.6 | 17 | BULK-1ca13679 |
| 18421 | Bulk Product 9361800a | Electronics | $473.66 | 299 | ★ 3.8 | 36 | BULK-8912b601 |
| 18422 | Bulk Product 29e5519a | Clothing | $471.01 | 451 | ★ 2.5 | 34 | BULK-e50cb9b8 |
| 18423 | Bulk Product 707a820b | Home & Garden | $515.51 | 23 | ★ 4.8 | 21 | BULK-74b855cb |
| 18424 | Bulk Product dab17d85 | Home & Garden | $630.87 | 461 | ★ 1.3 | 28 | BULK-2c084f1d |
| 18425 | Bulk Product fb6690e1 | Electronics | $396.82 | 395 | ★ 4.3 | 50 | BULK-f30b50ef |
| 18426 | Bulk Product cefb7c4b | Home & Garden | $684.77 | 248 | ★ 4.1 | 52 | BULK-fa03d6d8 |
| 18427 | Bulk Product 7449ad15 | Toys & Games | $932.37 | 442 | ★ 3.6 | 17 | BULK-a825e7ff |
| 18428 | Bulk Product 9b807d97 | Toys & Games | $691.81 | 415 | ★ 2.4 | 23 | BULK-0250afb6 |
| 18429 | Bulk Product fe47eb66 | Clothing | $135.48 | 424 | ★ 4.5 | 74 | BULK-d6b7cff3 |
| 18430 | Bulk Product d2f9cea4 | Clothing | $273.30 | 373 | ★ 1.3 | 18 | BULK-a587066b |
| 18431 | Bulk Product 8ee4b243 | Books | $561.25 | 256 | ★ 0.6 | 11 | BULK-6c5fe916 |
| 18432 | Bulk Product e52eda52 | Home & Garden | $784.32 | 390 | ★ 1.0 | 40 | BULK-2ae69a10 |
| 18433 | Bulk Product 417fa1cc | Clothing | $730.37 | 294 | ★ 3.2 | 6 | BULK-986d74b6 |
| 18434 | Bulk Product 69766be9 | Electronics | $796.58 | 313 | ★ 4.7 | 39 | BULK-9e0f336a |
| 18435 | Bulk Product b93b057a | Toys & Games | $983.70 | 391 | ★ 3.7 | 43 | BULK-e89d76c3 |
| 18436 | Bulk Product ef626d8b | Books | $233.96 | 246 | ★ 4.7 | 42 | BULK-4d235e76 |
| 18437 | Bulk Product d4314c9a | Toys & Games | $306.60 | 119 | ★ 1.2 | 33 | BULK-b525c616 |
| 18438 | Bulk Product 3d8b6789 | Sports & Outdoors | $688.24 | 163 | ★ 1.7 | 55 | BULK-cbdc1159 |
| 18439 | Bulk Product 9d2ab942 | Home & Garden | $294.73 | 84 | ★ 2.7 | 9 | BULK-751aa76e |
| 18440 | Bulk Product 54a4946e | Books | $968.25 | 254 | ★ 2.1 | 7 | BULK-174878f0 |
| 18441 | Bulk Product d333c65f | Sports & Outdoors | $672.65 | 285 | ★ 1.6 | 82 | BULK-e0dac0e0 |
| 18442 | Bulk Product cc737458 | Toys & Games | $800.08 | 336 | ★ 0.7 | 42 | BULK-15e93511 |
| 18443 | Bulk Product f93f0694 | Home & Garden | $800.57 | 226 | ★ 0.1 | 45 | BULK-9b776ccf |
| 18444 | Bulk Product f0a98358 | Toys & Games | $499.50 | 489 | ★ 1.0 | 53 | BULK-5736bfea |
| 18445 | Bulk Product b56da28c | Toys & Games | $538.62 | 185 | ★ 3.7 | 39 | BULK-3149ac2c |
| 18446 | Bulk Product f1493c86 | Sports & Outdoors | $908.55 | 336 | ★ 1.3 | 70 | BULK-12d0990c |
| 18447 | Bulk Product c3a4993f | Home & Garden | $364.94 | 162 | ★ 4.9 | 48 | BULK-ee0a28d9 |
| 18448 | Bulk Product a19df9a7 | Clothing | $842.58 | 79 | ★ 3.8 | 86 | BULK-6312a51b |
| 18449 | Bulk Product 3a9c8d9b | Home & Garden | $23.63 | 440 | ★ 4.1 | 24 | BULK-b9b491f8 |
| 18450 | Bulk Product c2fe0ffd | Sports & Outdoors | $434.21 | 259 | ★ 3.1 | 51 | BULK-32fa60a5 |
| 18451 | Bulk Product c363f47e | Toys & Games | $145.70 | 185 | ★ 2.2 | 62 | BULK-3268d43a |
| 18452 | Bulk Product b4085335 | Home & Garden | $930.70 | 330 | ★ 1.4 | 62 | BULK-7e63b9bd |
| 18453 | Bulk Product 559b0123 | Sports & Outdoors | $959.28 | 230 | ★ 5.0 | 44 | BULK-1ec5463e |
| 18454 | Bulk Product f391b53d | Books | $441.02 | 243 | ★ 4.3 | 82 | BULK-499b684d |
| 18455 | Bulk Product e806e2d4 | Toys & Games | $656.46 | 50 | ★ 1.9 | 37 | BULK-ba544ae4 |
| 18456 | Bulk Product 00e1446c | Clothing | $150.11 | 399 | ★ 2.2 | 88 | BULK-d9ebdbf4 |
| 18457 | Bulk Product 1fdcf081 | Home & Garden | $28.44 | 274 | ★ 4.6 | 6 | BULK-e5862825 |
| 18458 | Bulk Product 6feb3cc3 | Clothing | $518.55 | 94 | ★ 0.3 | 51 | BULK-f87e0d7e |
| 18459 | Bulk Product 50db9696 | Home & Garden | $732.81 | 379 | ★ 1.2 | 35 | BULK-8d4d53bb |
// 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
};
}