Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 22410 | Bulk Product 8abc793a | Toys & Games | $869.63 | 294 | ★ 1.3 | 69 | BULK-5c8c4123 |
| 22411 | Bulk Product dc6474e6 | Clothing | $129.52 | 340 | ★ 3.0 | 34 | BULK-c4632216 |
| 22412 | Bulk Product ae1db6a6 | Toys & Games | $773.58 | 269 | ★ 0.8 | 82 | BULK-783d01b4 |
| 22413 | Bulk Product 725bdfb8 | Toys & Games | $423.56 | 129 | ★ 3.4 | 31 | BULK-8f7957b4 |
| 22414 | Bulk Product 6bd89398 | Electronics | $997.26 | 343 | ★ 4.2 | 79 | BULK-a4ff986e |
| 22415 | Bulk Product aabebba9 | Toys & Games | $682.14 | 495 | ★ 2.8 | 47 | BULK-e669d3b0 |
| 22416 | Bulk Product 6313b5b0 | Home & Garden | $90.76 | 310 | ★ 0.1 | 32 | BULK-7dc866dc |
| 22417 | Bulk Product 951a7db0 | Toys & Games | $950.62 | 259 | ★ 1.6 | 52 | BULK-72633642 |
| 22418 | Bulk Product 41bcfd6b | Clothing | $268.13 | 332 | ★ 4.7 | 67 | BULK-f40a7efd |
| 22419 | Bulk Product ff3f1565 | Sports & Outdoors | $588.47 | 408 | ★ 2.1 | 92 | BULK-f1a5219d |
| 22420 | Bulk Product 63d9ba56 | Sports & Outdoors | $914.91 | 227 | ★ 2.3 | 4 | BULK-270f074a |
| 22421 | Bulk Product cfae2024 | Toys & Games | $17.66 | 72 | ★ 3.9 | 70 | BULK-df18810f |
| 22422 | Bulk Product 73f75b0a | Sports & Outdoors | $422.33 | 284 | ★ 4.5 | 72 | BULK-28fa22fe |
| 22423 | Bulk Product d138afa5 | Electronics | $58.33 | 249 | ★ 4.1 | 50 | BULK-f6e8c909 |
| 22424 | Bulk Product 00651363 | Books | $658.68 | 319 | ★ 0.7 | 16 | BULK-f479c442 |
| 22425 | Bulk Product a43f80d3 | Books | $576.61 | 246 | ★ 3.6 | 85 | BULK-b978d985 |
| 22426 | Bulk Product 43a9af24 | Electronics | $279.30 | 432 | ★ 4.2 | 15 | BULK-86454401 |
| 22427 | Bulk Product 43a3a5ee | Electronics | $951.47 | 176 | ★ 2.3 | 64 | BULK-4eaaea17 |
| 22428 | Bulk Product ad9d81bd | Sports & Outdoors | $881.84 | 146 | ★ 0.1 | 64 | BULK-53335e4e |
| 22429 | Bulk Product 96035624 | Clothing | $213.72 | 387 | ★ 1.8 | 62 | BULK-47a94a17 |
| 22430 | Bulk Product 91a3fe26 | Electronics | $275.52 | 67 | ★ 2.8 | 21 | BULK-7f1e87d2 |
| 22431 | Bulk Product cb314e2d | Books | $895.58 | 383 | ★ 1.0 | 7 | BULK-2f555f7f |
| 22432 | Bulk Product 45844c4a | Sports & Outdoors | $406.35 | 187 | ★ 1.9 | 52 | BULK-5b215fec |
| 22433 | Bulk Product d4c01747 | Clothing | $758.15 | 174 | ★ 2.4 | 45 | BULK-325c5b30 |
| 22434 | Bulk Product e4fd8a1d | Home & Garden | $176.30 | 140 | ★ 2.8 | 15 | BULK-4e16ad49 |
| 22435 | Bulk Product 6e3e15c3 | Books | $415.15 | 92 | ★ 1.3 | 75 | BULK-a243ac49 |
| 22436 | Bulk Product da5166e9 | Clothing | $799.59 | 310 | ★ 1.2 | 20 | BULK-2ecd6b20 |
| 22437 | Bulk Product 81be08c7 | Clothing | $66.62 | 1 | ★ 4.4 | 56 | BULK-cb1c0fdd |
| 22438 | Bulk Product 92effe12 | Sports & Outdoors | $870.41 | 344 | ★ 3.4 | 91 | BULK-01c88a96 |
| 22439 | Bulk Product 6062191e | Clothing | $337.38 | 200 | ★ 2.9 | 90 | BULK-8c15be3a |
| 22440 | Bulk Product f62e4db2 | Clothing | $312.54 | 204 | ★ 4.9 | 96 | BULK-d38fbbb6 |
| 22441 | Bulk Product e9182f2b | Toys & Games | $285.70 | 494 | ★ 0.7 | 77 | BULK-035c21da |
| 22442 | Bulk Product 39df0f36 | Electronics | $205.84 | 277 | ★ 3.5 | 97 | BULK-9d511167 |
| 22443 | Bulk Product 813cc140 | Clothing | $140.72 | 481 | ★ 4.6 | 43 | BULK-d0b0908d |
| 22444 | Bulk Product 9d5a4ae6 | Toys & Games | $560.64 | 210 | ★ 3.0 | 85 | BULK-cdb82370 |
| 22445 | Bulk Product 6a016373 | Home & Garden | $733.38 | 116 | ★ 1.0 | 5 | BULK-1d932370 |
| 22446 | Bulk Product 686b84f4 | Toys & Games | $660.29 | 406 | ★ 1.7 | 26 | BULK-6054d924 |
| 22447 | Bulk Product 84c7ce35 | Books | $712.00 | 372 | ★ 4.6 | 31 | BULK-51199d5d |
| 22448 | Bulk Product 68c935a1 | Home & Garden | $19.18 | 270 | ★ 1.5 | 19 | BULK-daec03c8 |
| 22449 | Bulk Product 00e698cb | Clothing | $163.63 | 50 | ★ 0.4 | 99 | BULK-b692200b |
| 22450 | Bulk Product 1b1f86ec | Books | $901.83 | 369 | ★ 0.6 | 86 | BULK-de902dcd |
| 22451 | Bulk Product e1adc00f | Electronics | $643.80 | 394 | ★ 3.4 | 73 | BULK-b1cca378 |
| 22452 | Bulk Product e9f2f602 | Home & Garden | $540.24 | 279 | ★ 1.3 | 32 | BULK-43bfa2e5 |
| 22453 | Bulk Product d29b5b27 | Clothing | $199.28 | 180 | ★ 0.9 | 69 | BULK-eb4c0b3d |
| 22454 | Bulk Product 04bc7b33 | Books | $1,002.93 | 419 | ★ 4.3 | 97 | BULK-42eb249d |
| 22455 | Bulk Product deba7fee | Electronics | $604.25 | 473 | ★ 2.3 | 71 | BULK-6fb48c33 |
| 22456 | Bulk Product 21821dd6 | Clothing | $653.17 | 226 | ★ 0.7 | 78 | BULK-f4b8cdda |
| 22457 | Bulk Product 5f63f4d5 | Sports & Outdoors | $549.05 | 14 | ★ 2.5 | 98 | BULK-1d81725f |
| 22458 | Bulk Product 2f39e399 | Home & Garden | $189.20 | 352 | ★ 2.9 | 16 | BULK-8388f09a |
| 22459 | Bulk Product 51615ce1 | Sports & Outdoors | $72.26 | 383 | ★ 1.2 | 66 | BULK-eb6a0a2d |
// 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
};
}