Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 18710 | Bulk Product 254c19b6 | Toys & Games | $730.51 | 443 | ★ 2.3 | 47 | BULK-e6310030 |
| 18711 | Bulk Product 5e5f9b83 | Books | $300.11 | 462 | ★ 1.3 | 28 | BULK-ec881feb |
| 18712 | Bulk Product 9fa5a9f5 | Home & Garden | $841.95 | 483 | ★ 3.9 | 16 | BULK-db7ffbbe |
| 18713 | Bulk Product 5f812b59 | Books | $418.81 | 88 | ★ 1.6 | 55 | BULK-67f4ae88 |
| 18714 | Bulk Product 598d0207 | Books | $562.93 | 137 | ★ 3.2 | 17 | BULK-d01fabe4 |
| 18715 | Bulk Product 61b17290 | Toys & Games | $169.56 | 116 | ★ 3.3 | 62 | BULK-ed338bf7 |
| 18716 | Bulk Product b43c6f8f | Books | $332.22 | 462 | ★ 4.3 | 59 | BULK-a310798a |
| 18717 | Bulk Product 760f594c | Sports & Outdoors | $175.53 | 376 | ★ 0.8 | 39 | BULK-e77f1b5b |
| 18718 | Bulk Product 380dd0f4 | Sports & Outdoors | $583.62 | 233 | ★ 3.2 | 63 | BULK-32b979cc |
| 18719 | Bulk Product a9329b1c | Toys & Games | $1,003.70 | 419 | ★ 1.2 | 30 | BULK-78aaa96e |
| 18720 | Bulk Product c899cfa3 | Home & Garden | $80.92 | 298 | ★ 3.7 | 14 | BULK-fe7720e9 |
| 18721 | Bulk Product 130da241 | Clothing | $755.55 | 158 | ★ 2.9 | 0 | BULK-a09d0fd4 |
| 18722 | Bulk Product ae2a60f5 | Toys & Games | $111.30 | 259 | ★ 0.0 | 12 | BULK-cb145e77 |
| 18723 | Bulk Product 7ac001fe | Sports & Outdoors | $696.19 | 271 | ★ 4.7 | 49 | BULK-789f0471 |
| 18724 | Bulk Product a1f8378c | Books | $289.47 | 164 | ★ 3.6 | 24 | BULK-93cebc15 |
| 18725 | Bulk Product e76db9c5 | Electronics | $902.73 | 261 | ★ 0.9 | 55 | BULK-6b0b9869 |
| 18726 | Bulk Product fbeb6f39 | Books | $222.82 | 56 | ★ 0.5 | 78 | BULK-50f402d0 |
| 18727 | Bulk Product 4cb07245 | Home & Garden | $705.31 | 406 | ★ 4.6 | 9 | BULK-a24141d1 |
| 18728 | Bulk Product 38c10f08 | Toys & Games | $958.62 | 126 | ★ 4.2 | 7 | BULK-0a225c78 |
| 18729 | Bulk Product 463195cd | Sports & Outdoors | $421.03 | 91 | ★ 0.7 | 30 | BULK-f123cd83 |
| 18730 | Bulk Product 8be76812 | Home & Garden | $774.89 | 437 | ★ 3.6 | 18 | BULK-f17bcb7c |
| 18731 | Bulk Product 3a18d15f | Electronics | $27.09 | 341 | ★ 0.9 | 1 | BULK-76b1f17e |
| 18732 | Bulk Product 32df7164 | Electronics | $827.74 | 334 | ★ 0.4 | 40 | BULK-35dae299 |
| 18733 | Bulk Product 091d56f1 | Clothing | $93.09 | 66 | ★ 2.5 | 42 | BULK-9bd9213b |
| 18734 | Bulk Product dd94dd70 | Sports & Outdoors | $912.41 | 232 | ★ 0.3 | 39 | BULK-18f5b2b9 |
| 18735 | Bulk Product c4a80e23 | Clothing | $497.64 | 358 | ★ 0.2 | 46 | BULK-476afc79 |
| 18736 | Bulk Product f835449e | Sports & Outdoors | $839.16 | 278 | ★ 1.5 | 50 | BULK-390fd65f |
| 18737 | Bulk Product dbbe9c57 | Home & Garden | $852.51 | 242 | ★ 4.5 | 83 | BULK-1a8fbe16 |
| 18738 | Bulk Product 318c8593 | Home & Garden | $255.06 | 410 | ★ 1.4 | 24 | BULK-99148bbf |
| 18739 | Bulk Product c553b390 | Sports & Outdoors | $170.77 | 109 | ★ 2.4 | 58 | BULK-ba25bf55 |
| 18740 | Bulk Product 798feab0 | Books | $816.34 | 272 | ★ 4.8 | 53 | BULK-4a3885f9 |
| 18741 | Bulk Product 8c63f981 | Home & Garden | $664.60 | 105 | ★ 1.7 | 96 | BULK-a460018c |
| 18742 | Bulk Product 68702225 | Home & Garden | $631.12 | 418 | ★ 3.8 | 40 | BULK-a836a802 |
| 18743 | Bulk Product e5c75b2e | Home & Garden | $826.90 | 54 | ★ 4.1 | 79 | BULK-62c2d68e |
| 18744 | Bulk Product 23b7d228 | Electronics | $559.17 | 430 | ★ 2.4 | 40 | BULK-a8d05345 |
| 18745 | Bulk Product 726ff87e | Toys & Games | $48.58 | 302 | ★ 5.0 | 48 | BULK-f19e205b |
| 18746 | Bulk Product 4ef325a0 | Sports & Outdoors | $736.17 | 165 | ★ 3.6 | 34 | BULK-edd66c33 |
| 18747 | Bulk Product 2d76e371 | Books | $405.59 | 464 | ★ 4.5 | 48 | BULK-115f8693 |
| 18748 | Bulk Product 2fa83a64 | Books | $399.32 | 365 | ★ 0.8 | 15 | BULK-9bd7ad1f |
| 18749 | Bulk Product 4d08ecd0 | Home & Garden | $738.28 | 111 | ★ 4.6 | 17 | BULK-7cfea171 |
| 18750 | Bulk Product f24af1e0 | Home & Garden | $19.23 | 94 | ★ 3.7 | 63 | BULK-495d9165 |
| 18751 | Bulk Product 24e3ebe9 | Books | $934.10 | 117 | ★ 2.4 | 63 | BULK-0cfe6214 |
| 18752 | Bulk Product df5158b3 | Electronics | $806.86 | 226 | ★ 2.1 | 74 | BULK-ede41a27 |
| 18753 | Bulk Product 51dc75d5 | Toys & Games | $379.76 | 497 | ★ 3.4 | 44 | BULK-017bfbeb |
| 18754 | Bulk Product 93da3bd2 | Electronics | $868.46 | 61 | ★ 3.6 | 71 | BULK-8642e860 |
| 18755 | Bulk Product aad63ff7 | Toys & Games | $316.76 | 294 | ★ 3.8 | 40 | BULK-c16cd743 |
| 18756 | Bulk Product 82c8a018 | Books | $314.88 | 88 | ★ 0.6 | 13 | BULK-5622994b |
| 18757 | Bulk Product d3d4db67 | Toys & Games | $515.48 | 251 | ★ 3.8 | 81 | BULK-6b16594d |
| 18758 | Bulk Product 965e4dee | Books | $287.96 | 319 | ★ 2.2 | 37 | BULK-11808cd5 |
| 18759 | Bulk Product 19ceac18 | Toys & Games | $971.45 | 37 | ★ 2.6 | 1 | BULK-ea573266 |
// 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
};
}