Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 18810 | Bulk Product 016f61a8 | Toys & Games | $66.37 | 252 | ★ 4.5 | 5 | BULK-02ba4cb0 |
| 18811 | Bulk Product a6e6f0e9 | Books | $857.11 | 51 | ★ 5.0 | 87 | BULK-5cec24dd |
| 18812 | Bulk Product d28bd666 | Toys & Games | $921.57 | 384 | ★ 3.5 | 99 | BULK-bd46e55b |
| 18813 | Bulk Product ab394d37 | Home & Garden | $370.51 | 128 | ★ 4.0 | 17 | BULK-c39719d3 |
| 18814 | Bulk Product 1bfa71f6 | Toys & Games | $906.49 | 224 | ★ 4.4 | 59 | BULK-630d913b |
| 18815 | Bulk Product 611f88a1 | Toys & Games | $583.25 | 233 | ★ 0.0 | 70 | BULK-2c334547 |
| 18816 | Bulk Product f7385558 | Clothing | $175.62 | 214 | ★ 1.8 | 54 | BULK-a3ed9d0f |
| 18817 | Bulk Product 5733738d | Sports & Outdoors | $800.41 | 399 | ★ 4.2 | 82 | BULK-f7971624 |
| 18818 | Bulk Product fa9ba5ef | Home & Garden | $964.97 | 208 | ★ 0.6 | 39 | BULK-a9361c6a |
| 18819 | Bulk Product b9cea0be | Home & Garden | $132.54 | 340 | ★ 0.4 | 83 | BULK-d0338790 |
| 18820 | Bulk Product 28f09c96 | Clothing | $64.29 | 385 | ★ 0.9 | 0 | BULK-b8944ea4 |
| 18821 | Bulk Product e860eba2 | Sports & Outdoors | $661.19 | 315 | ★ 0.6 | 78 | BULK-d2abb22b |
| 18822 | Bulk Product 6a32db37 | Clothing | $248.68 | 130 | ★ 2.5 | 9 | BULK-d6ba7e7a |
| 18823 | Bulk Product 5c42686a | Electronics | $167.66 | 347 | ★ 4.7 | 29 | BULK-aaddfcfc |
| 18824 | Bulk Product 1aba45f1 | Electronics | $819.38 | 69 | ★ 2.2 | 0 | BULK-e285f81d |
| 18825 | Bulk Product a84231fe | Toys & Games | $918.39 | 62 | ★ 3.3 | 8 | BULK-d08e6a44 |
| 18826 | Bulk Product a6c0866c | Clothing | $231.38 | 324 | ★ 2.2 | 60 | BULK-314769cb |
| 18827 | Bulk Product fdd49b4b | Books | $174.25 | 405 | ★ 2.5 | 53 | BULK-f7582fcd |
| 18828 | Bulk Product 313f9fdc | Books | $859.18 | 103 | ★ 0.5 | 2 | BULK-0322fa09 |
| 18829 | Bulk Product ed740178 | Books | $482.45 | 361 | ★ 4.2 | 16 | BULK-6e0115c3 |
| 18830 | Bulk Product e3bdbce0 | Home & Garden | $493.72 | 107 | ★ 0.6 | 62 | BULK-1794bc69 |
| 18831 | Bulk Product dcb69dd7 | Sports & Outdoors | $195.34 | 42 | ★ 1.9 | 66 | BULK-850c33c1 |
| 18832 | Bulk Product e77401de | Clothing | $611.03 | 92 | ★ 4.0 | 77 | BULK-39924c4b |
| 18833 | Bulk Product d2fe9bb2 | Toys & Games | $843.00 | 298 | ★ 0.7 | 82 | BULK-1ddad3dc |
| 18834 | Bulk Product ab9d1a40 | Books | $639.13 | 434 | ★ 3.6 | 19 | BULK-8d7f7127 |
| 18835 | Bulk Product 1998473d | Sports & Outdoors | $923.62 | 389 | ★ 0.3 | 25 | BULK-0e058ffb |
| 18836 | Bulk Product 87e018c0 | Electronics | $140.79 | 23 | ★ 0.6 | 17 | BULK-525e6c1f |
| 18837 | Bulk Product fa02a184 | Toys & Games | $117.98 | 151 | ★ 1.6 | 47 | BULK-ee7e14e0 |
| 18838 | Bulk Product 8e1b2497 | Books | $596.00 | 365 | ★ 4.3 | 27 | BULK-75ec2bb1 |
| 18839 | Bulk Product dfbde4af | Electronics | $167.59 | 258 | ★ 3.5 | 32 | BULK-6bce81da |
| 18840 | Bulk Product 3ce65ab7 | Sports & Outdoors | $598.11 | 49 | ★ 0.3 | 70 | BULK-a6c08290 |
| 18841 | Bulk Product 4518d9ef | Electronics | $753.26 | 247 | ★ 4.8 | 27 | BULK-b1ae03ab |
| 18842 | Bulk Product 7188e787 | Toys & Games | $391.07 | 19 | ★ 0.8 | 65 | BULK-cfe677da |
| 18843 | Bulk Product 93547be2 | Toys & Games | $658.59 | 7 | ★ 3.1 | 58 | BULK-ffd81aee |
| 18844 | Bulk Product efe642ca | Sports & Outdoors | $393.18 | 64 | ★ 4.2 | 34 | BULK-c6581adb |
| 18845 | Bulk Product a61d98fa | Home & Garden | $328.10 | 181 | ★ 0.1 | 44 | BULK-27967b38 |
| 18846 | Bulk Product ba123ef3 | Clothing | $942.16 | 244 | ★ 3.8 | 97 | BULK-dd3aafc3 |
| 18847 | Bulk Product 3ff64745 | Books | $388.05 | 244 | ★ 4.7 | 60 | BULK-d3cb28a1 |
| 18848 | Bulk Product 3d1ef9cb | Electronics | $518.26 | 469 | ★ 4.3 | 89 | BULK-042f1b35 |
| 18849 | Bulk Product f0771b16 | Sports & Outdoors | $675.46 | 135 | ★ 4.1 | 8 | BULK-19d29d17 |
| 18850 | Bulk Product 4bc5f727 | Books | $579.14 | 499 | ★ 1.5 | 78 | BULK-c6045b2b |
| 18851 | Bulk Product e03a001e | Clothing | $489.62 | 281 | ★ 0.5 | 59 | BULK-df161f9b |
| 18852 | Bulk Product 89ba9d9e | Home & Garden | $281.52 | 395 | ★ 4.7 | 80 | BULK-70399e1d |
| 18853 | Bulk Product c02c568c | Toys & Games | $694.18 | 292 | ★ 0.3 | 80 | BULK-ee5154ac |
| 18854 | Bulk Product 4ccbb781 | Sports & Outdoors | $319.38 | 314 | ★ 1.2 | 89 | BULK-d068fb1a |
| 18855 | Bulk Product cafcdaf0 | Clothing | $458.77 | 379 | ★ 4.6 | 77 | BULK-31ab46bf |
| 18856 | Bulk Product ee8f6776 | Books | $28.17 | 187 | ★ 1.3 | 4 | BULK-7b725851 |
| 18857 | Bulk Product 47398c05 | Books | $418.85 | 431 | ★ 0.4 | 39 | BULK-d5e17272 |
| 18858 | Bulk Product 2c6035fa | Sports & Outdoors | $445.03 | 478 | ★ 2.8 | 82 | BULK-902e3467 |
| 18859 | Bulk Product b1e8d10e | Electronics | $628.60 | 363 | ★ 0.3 | 76 | BULK-debd3cec |
// 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
};
}