Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 15960 | Bulk Product d719bc25 | Books | $317.50 | 224 | ★ 0.4 | 53 | BULK-c48dd436 |
| 15961 | Bulk Product 87ce5037 | Home & Garden | $819.82 | 24 | ★ 1.9 | 7 | BULK-d2a34be4 |
| 15962 | Bulk Product ac40f892 | Electronics | $157.43 | 203 | ★ 2.1 | 60 | BULK-08ab13f4 |
| 15963 | Bulk Product c563a059 | Home & Garden | $455.34 | 468 | ★ 3.1 | 90 | BULK-b1d9b9e7 |
| 15964 | Bulk Product fd673bc6 | Clothing | $854.16 | 64 | ★ 1.4 | 24 | BULK-1b5ca8dc |
| 15965 | Bulk Product e8d585b0 | Clothing | $990.29 | 114 | ★ 0.7 | 9 | BULK-8671266d |
| 15966 | Bulk Product 4c395e5c | Books | $533.28 | 487 | ★ 4.1 | 42 | BULK-b2d2a01c |
| 15967 | Bulk Product 7509e699 | Clothing | $761.75 | 467 | ★ 0.3 | 44 | BULK-93a6259f |
| 15968 | Bulk Product 15ec2147 | Books | $690.69 | 461 | ★ 0.3 | 9 | BULK-48a1be14 |
| 15969 | Bulk Product 3a169c28 | Electronics | $271.25 | 194 | ★ 3.1 | 49 | BULK-40998e7d |
| 15970 | Bulk Product 3b6f428d | Electronics | $350.96 | 139 | ★ 5.0 | 67 | BULK-6f10fcea |
| 15971 | Bulk Product b7564f88 | Books | $204.57 | 190 | ★ 4.0 | 40 | BULK-ffa3ccfd |
| 15972 | Bulk Product f95d5ccd | Books | $136.41 | 142 | ★ 3.9 | 43 | BULK-b65b395a |
| 15973 | Bulk Product 8a93f990 | Clothing | $140.61 | 367 | ★ 3.5 | 38 | BULK-a46895f9 |
| 15974 | Bulk Product 8f68799d | Home & Garden | $955.40 | 206 | ★ 2.3 | 32 | BULK-b6ca1751 |
| 15975 | Bulk Product 6cab9dbe | Books | $314.54 | 250 | ★ 0.9 | 93 | BULK-d0d7c5b1 |
| 15976 | Bulk Product 32bf5bda | Electronics | $294.12 | 83 | ★ 0.4 | 50 | BULK-c815561a |
| 15977 | Bulk Product 43c5041a | Home & Garden | $114.70 | 378 | ★ 0.0 | 92 | BULK-eb8e5ccf |
| 15978 | Bulk Product 9dca561c | Books | $300.30 | 456 | ★ 4.6 | 15 | BULK-bc8871b8 |
| 15979 | Bulk Product 9aebcbcf | Electronics | $342.22 | 400 | ★ 2.3 | 20 | BULK-d2a42a2b |
| 15980 | Bulk Product ac8cdf01 | Clothing | $431.90 | 222 | ★ 4.2 | 21 | BULK-34226ba1 |
| 15981 | Bulk Product ab46e8e0 | Books | $31.42 | 193 | ★ 3.9 | 53 | BULK-74b1b253 |
| 15982 | Bulk Product 89af4d3e | Sports & Outdoors | $555.75 | 238 | ★ 3.9 | 60 | BULK-48341ca0 |
| 15983 | Bulk Product 5da53232 | Home & Garden | $50.42 | 18 | ★ 1.9 | 11 | BULK-721d45bf |
| 15984 | Bulk Product 6cbe0489 | Books | $894.22 | 373 | ★ 2.2 | 7 | BULK-de1a03d5 |
| 15985 | Bulk Product 4f16b4c1 | Home & Garden | $128.05 | 47 | ★ 1.8 | 67 | BULK-63442f20 |
| 15986 | Bulk Product 17d8709f | Sports & Outdoors | $477.96 | 260 | ★ 3.4 | 82 | BULK-cc14f199 |
| 15987 | Bulk Product 2705eb0f | Toys & Games | $771.62 | 1 | ★ 0.6 | 51 | BULK-0e4acf8e |
| 15988 | Bulk Product 941ff6fb | Home & Garden | $944.47 | 437 | ★ 1.1 | 67 | BULK-31839b65 |
| 15989 | Bulk Product 2ec999b5 | Books | $860.25 | 354 | ★ 0.2 | 37 | BULK-83e69162 |
| 15990 | Bulk Product 030cfcba | Books | $918.88 | 215 | ★ 0.3 | 84 | BULK-f3d480f9 |
| 15991 | Bulk Product 0ce923f1 | Books | $312.60 | 4 | ★ 2.5 | 9 | BULK-0714e0a2 |
| 15992 | Bulk Product d61998b0 | Clothing | $540.62 | 495 | ★ 0.3 | 67 | BULK-2192b730 |
| 15993 | Bulk Product 5a3017b1 | Toys & Games | $542.57 | 333 | ★ 1.1 | 16 | BULK-8dbebfd8 |
| 15994 | Bulk Product f73a274e | Home & Garden | $1,008.96 | 27 | ★ 4.6 | 55 | BULK-9165ea07 |
| 15995 | Bulk Product 3fcca318 | Home & Garden | $983.51 | 409 | ★ 2.3 | 5 | BULK-e918016f |
| 15996 | Bulk Product 5cec4154 | Electronics | $917.04 | 206 | ★ 0.6 | 29 | BULK-b7a14ccd |
| 15997 | Bulk Product cad4dc9c | Electronics | $630.07 | 61 | ★ 0.6 | 42 | BULK-27114f7d |
| 15998 | Bulk Product 3dbc94ec | Sports & Outdoors | $952.16 | 96 | ★ 1.2 | 79 | BULK-3c288ce6 |
| 15999 | Bulk Product 13ce3713 | Books | $479.63 | 3 | ★ 2.2 | 20 | BULK-2ac1252c |
| 16000 | Bulk Product acc6991c | Sports & Outdoors | $390.66 | 159 | ★ 1.2 | 43 | BULK-ba54118e |
| 16001 | Bulk Product a1e8f4c5 | Clothing | $832.82 | 490 | ★ 4.6 | 36 | BULK-5287afd5 |
| 16002 | Bulk Product 3e930ff5 | Clothing | $379.52 | 355 | ★ 4.1 | 6 | BULK-97fc878b |
| 16003 | Bulk Product a221a522 | Home & Garden | $820.24 | 350 | ★ 3.8 | 56 | BULK-4d62392e |
| 16004 | Bulk Product 5b71c85e | Toys & Games | $133.01 | 166 | ★ 1.7 | 57 | BULK-616dd1fe |
| 16005 | Bulk Product 15d351b0 | Books | $713.74 | 299 | ★ 1.0 | 50 | BULK-28725491 |
| 16006 | Bulk Product 698fcf1b | Books | $698.80 | 162 | ★ 2.4 | 51 | BULK-6b578021 |
| 16007 | Bulk Product bc8d01d8 | Home & Garden | $997.91 | 80 | ★ 3.9 | 73 | BULK-c2bfc61d |
| 16008 | Bulk Product 46391dd7 | Home & Garden | $989.70 | 484 | ★ 2.7 | 82 | BULK-6b746c34 |
| 16009 | Bulk Product 9aadbcd8 | Sports & Outdoors | $123.26 | 236 | ★ 2.6 | 40 | BULK-ab52d836 |
// 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
};
}