Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 16760 | Bulk Product f42be8a9 | Electronics | $500.06 | 294 | ★ 0.1 | 69 | BULK-5413ef4a |
| 16761 | Bulk Product fc872a0b | Clothing | $743.50 | 216 | ★ 0.5 | 87 | BULK-52e31ccf |
| 16762 | Bulk Product d7468b0b | Toys & Games | $310.91 | 402 | ★ 4.7 | 23 | BULK-e5e816b9 |
| 16763 | Bulk Product 000d03a6 | Electronics | $557.35 | 216 | ★ 4.7 | 4 | BULK-5cf3057b |
| 16764 | Bulk Product 9b94aeba | Sports & Outdoors | $100.37 | 0 | ★ 0.7 | 1 | BULK-2794ebfe |
| 16765 | Bulk Product 230cdac5 | Toys & Games | $607.25 | 232 | ★ 0.3 | 63 | BULK-ac9eace9 |
| 16766 | Bulk Product 56213102 | Clothing | $197.72 | 175 | ★ 1.6 | 98 | BULK-e7f947f3 |
| 16767 | Bulk Product 05386984 | Home & Garden | $890.08 | 281 | ★ 4.1 | 26 | BULK-bf25547e |
| 16768 | Bulk Product 1eb47090 | Home & Garden | $402.84 | 81 | ★ 4.0 | 59 | BULK-104b0708 |
| 16769 | Bulk Product ebe01b1f | Books | $117.90 | 308 | ★ 0.3 | 4 | BULK-d44d5b25 |
| 16770 | Bulk Product 1d2baaf7 | Electronics | $529.07 | 385 | ★ 0.1 | 23 | BULK-0814a1c1 |
| 16771 | Bulk Product bf0e4fb0 | Home & Garden | $837.21 | 29 | ★ 0.7 | 26 | BULK-47026ab3 |
| 16772 | Bulk Product 0719a677 | Clothing | $940.21 | 458 | ★ 3.1 | 88 | BULK-2a653cb6 |
| 16773 | Bulk Product cee25ef8 | Toys & Games | $243.59 | 364 | ★ 2.5 | 88 | BULK-4d45c990 |
| 16774 | Bulk Product 99dfeac0 | Books | $962.37 | 65 | ★ 2.8 | 6 | BULK-120f1f8b |
| 16775 | Bulk Product bd0bfe37 | Home & Garden | $904.55 | 469 | ★ 0.8 | 6 | BULK-359ecc2e |
| 16776 | Bulk Product 6415a2f2 | Books | $638.82 | 343 | ★ 1.8 | 42 | BULK-7c10010a |
| 16777 | Bulk Product 2bacaf96 | Electronics | $367.56 | 65 | ★ 0.7 | 30 | BULK-c7d8d8bc |
| 16778 | Bulk Product 4b409064 | Clothing | $834.65 | 10 | ★ 4.6 | 17 | BULK-eee59133 |
| 16779 | Bulk Product e7840b48 | Toys & Games | $30.45 | 127 | ★ 4.0 | 84 | BULK-f0101e3a |
| 16780 | Bulk Product 1183844b | Books | $841.95 | 181 | ★ 3.8 | 99 | BULK-00ed1c17 |
| 16781 | Bulk Product 5ff68981 | Sports & Outdoors | $749.60 | 422 | ★ 3.6 | 89 | BULK-955ad9e1 |
| 16782 | Bulk Product cb559963 | Home & Garden | $608.24 | 163 | ★ 3.5 | 6 | BULK-81a03000 |
| 16783 | Bulk Product c7550743 | Home & Garden | $971.51 | 380 | ★ 3.4 | 31 | BULK-25e13d96 |
| 16784 | Bulk Product 8c8bd9e3 | Home & Garden | $190.99 | 136 | ★ 4.6 | 12 | BULK-d966281c |
| 16785 | Bulk Product 8863907e | Sports & Outdoors | $90.06 | 146 | ★ 2.2 | 56 | BULK-5e7e1cfa |
| 16786 | Bulk Product f41e4565 | Books | $30.14 | 153 | ★ 2.7 | 71 | BULK-e34d62cb |
| 16787 | Bulk Product 94d0684c | Home & Garden | $75.21 | 308 | ★ 2.5 | 41 | BULK-46bbfa22 |
| 16788 | Bulk Product 5bd6296e | Sports & Outdoors | $468.50 | 496 | ★ 3.5 | 93 | BULK-a3657009 |
| 16789 | Bulk Product ec90bebf | Clothing | $639.40 | 436 | ★ 1.4 | 14 | BULK-de53f305 |
| 16790 | Bulk Product bdc94622 | Clothing | $275.94 | 488 | ★ 2.8 | 77 | BULK-d42c0273 |
| 16791 | Bulk Product b307b2b6 | Books | $429.39 | 321 | ★ 0.7 | 27 | BULK-d7ba4f92 |
| 16792 | Bulk Product 3e000468 | Books | $522.92 | 280 | ★ 1.7 | 80 | BULK-57e11e94 |
| 16793 | Bulk Product 77708064 | Toys & Games | $830.85 | 152 | ★ 1.4 | 47 | BULK-8224bcaf |
| 16794 | Bulk Product 4a8cc5ff | Home & Garden | $80.27 | 143 | ★ 1.4 | 28 | BULK-25ed7094 |
| 16795 | Bulk Product b210c54e | Clothing | $330.78 | 17 | ★ 1.7 | 52 | BULK-b60ac8a3 |
| 16796 | Bulk Product 43480f1b | Toys & Games | $145.89 | 62 | ★ 1.1 | 36 | BULK-7acfa77b |
| 16797 | Bulk Product 694e67c2 | Clothing | $895.43 | 477 | ★ 3.6 | 37 | BULK-44011e0e |
| 16798 | Bulk Product 933bbd8b | Toys & Games | $357.18 | 32 | ★ 2.5 | 86 | BULK-bb1422eb |
| 16799 | Bulk Product d08d8066 | Toys & Games | $940.22 | 376 | ★ 2.8 | 12 | BULK-2ed9f047 |
| 16800 | Bulk Product 7d7d7039 | Sports & Outdoors | $849.25 | 263 | ★ 4.9 | 98 | BULK-96358b46 |
| 16801 | Bulk Product fdad6fa3 | Toys & Games | $741.55 | 333 | ★ 4.7 | 27 | BULK-a6402337 |
| 16802 | Bulk Product 5f924673 | Electronics | $833.85 | 46 | ★ 4.2 | 21 | BULK-fb4b6f7a |
| 16803 | Bulk Product d7f8ce4e | Toys & Games | $254.91 | 212 | ★ 3.8 | 32 | BULK-b6db2aff |
| 16804 | Bulk Product 06b87bb3 | Clothing | $712.20 | 300 | ★ 0.5 | 63 | BULK-9d2a1878 |
| 16805 | Bulk Product 19582606 | Electronics | $111.57 | 390 | ★ 3.4 | 32 | BULK-26bcd951 |
| 16806 | Bulk Product e4c85251 | Electronics | $823.62 | 416 | ★ 1.5 | 46 | BULK-d0bb4c27 |
| 16807 | Bulk Product c64dd9af | Books | $693.82 | 73 | ★ 1.3 | 25 | BULK-8dfd428c |
| 16808 | Bulk Product 5e4fd5e6 | Clothing | $490.96 | 153 | ★ 1.6 | 53 | BULK-575b98b2 |
| 16809 | Bulk Product 460aeb8e | Electronics | $175.67 | 343 | ★ 4.4 | 69 | BULK-78aaff3c |
// 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
};
}