Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 8360 | Bulk Product cac96103 | Home & Garden | $684.94 | 441 | ★ 2.4 | 88 | BULK-55498530 |
| 8361 | Bulk Product bee47056 | Home & Garden | $885.81 | 414 | ★ 1.9 | 23 | BULK-78107119 |
| 8362 | Bulk Product 23d50133 | Clothing | $920.18 | 252 | ★ 1.7 | 52 | BULK-0572f3b4 |
| 8363 | Bulk Product 874fe029 | Electronics | $718.76 | 18 | ★ 4.8 | 38 | BULK-61dfee6f |
| 8364 | Bulk Product ffcc2cdc | Clothing | $983.68 | 217 | ★ 1.3 | 8 | BULK-d501e500 |
| 8365 | Bulk Product 15ce6b16 | Sports & Outdoors | $203.40 | 30 | ★ 0.7 | 8 | BULK-0e3345d0 |
| 8366 | Bulk Product 48699710 | Electronics | $668.18 | 122 | ★ 3.7 | 30 | BULK-df4adafa |
| 8367 | Bulk Product 0d146a67 | Sports & Outdoors | $345.44 | 333 | ★ 4.1 | 25 | BULK-c4feee84 |
| 8368 | Bulk Product 982683e9 | Toys & Games | $866.44 | 132 | ★ 3.4 | 82 | BULK-70515a4c |
| 8369 | Bulk Product 65bc89c4 | Toys & Games | $925.42 | 308 | ★ 1.7 | 59 | BULK-5c01a548 |
| 8370 | Bulk Product 00cd3f2e | Clothing | $104.19 | 236 | ★ 0.2 | 37 | BULK-76835fbc |
| 8371 | Bulk Product f7c4da70 | Sports & Outdoors | $681.12 | 390 | ★ 2.1 | 60 | BULK-15f99ca0 |
| 8372 | Bulk Product 6ff55ec6 | Home & Garden | $437.07 | 282 | ★ 3.7 | 93 | BULK-bfe2a4aa |
| 8373 | Bulk Product 1e9aa303 | Electronics | $466.47 | 308 | ★ 1.7 | 43 | BULK-7027484b |
| 8374 | Bulk Product a2184da8 | Home & Garden | $876.57 | 115 | ★ 0.3 | 13 | BULK-65191c97 |
| 8375 | Bulk Product 5efa1d0d | Books | $473.26 | 486 | ★ 2.4 | 96 | BULK-4a724b36 |
| 8376 | Bulk Product 3061f4e4 | Toys & Games | $492.51 | 213 | ★ 2.2 | 85 | BULK-3e1d1df3 |
| 8377 | Bulk Product 8d739fbb | Books | $996.75 | 186 | ★ 3.0 | 1 | BULK-16ac0fb6 |
| 8378 | Bulk Product 11cfa337 | Home & Garden | $868.57 | 287 | ★ 4.8 | 92 | BULK-3fd6cb86 |
| 8379 | Bulk Product 9b3a9d9a | Clothing | $18.77 | 353 | ★ 3.5 | 85 | BULK-3c25cbdf |
| 8380 | Bulk Product a87f400a | Sports & Outdoors | $586.00 | 281 | ★ 4.7 | 25 | BULK-6237ae5d |
| 8381 | Bulk Product 77a30f7f | Books | $374.17 | 477 | ★ 2.4 | 54 | BULK-47163ed4 |
| 8382 | Bulk Product 10335ec6 | Sports & Outdoors | $460.57 | 298 | ★ 1.6 | 8 | BULK-3b02586e |
| 8383 | Bulk Product 0fd77d14 | Toys & Games | $306.07 | 422 | ★ 3.4 | 25 | BULK-7ab62fb7 |
| 8384 | Bulk Product 557cf337 | Toys & Games | $865.85 | 459 | ★ 1.2 | 84 | BULK-2c7052eb |
| 8385 | Bulk Product 0f279f4b | Electronics | $802.86 | 179 | ★ 2.3 | 27 | BULK-62f41891 |
| 8386 | Bulk Product cb892a58 | Toys & Games | $825.15 | 281 | ★ 2.4 | 3 | BULK-dcdde7a1 |
| 8387 | Bulk Product 6942de5d | Clothing | $119.20 | 466 | ★ 2.6 | 3 | BULK-026fd178 |
| 8388 | Bulk Product 7f106bfc | Toys & Games | $37.98 | 377 | ★ 0.9 | 89 | BULK-22edd2af |
| 8389 | Bulk Product 6d9422ff | Electronics | $975.57 | 288 | ★ 2.5 | 78 | BULK-23bb2dc5 |
| 8390 | Bulk Product 3dd9b65f | Home & Garden | $536.75 | 368 | ★ 2.1 | 2 | BULK-9546da34 |
| 8391 | Bulk Product fc277f9a | Toys & Games | $314.34 | 469 | ★ 0.1 | 42 | BULK-ea692a21 |
| 8392 | Bulk Product 8b5950a5 | Home & Garden | $532.14 | 65 | ★ 0.4 | 72 | BULK-104b6e13 |
| 8393 | Bulk Product c2159b87 | Toys & Games | $712.05 | 494 | ★ 2.8 | 94 | BULK-26555b9f |
| 8394 | Bulk Product 6cb426cb | Home & Garden | $516.06 | 76 | ★ 3.9 | 1 | BULK-21daf3e0 |
| 8395 | Bulk Product 3a89e87f | Books | $718.92 | 368 | ★ 1.5 | 47 | BULK-095ecb28 |
| 8396 | Bulk Product f06b351a | Home & Garden | $378.76 | 345 | ★ 4.1 | 1 | BULK-72378485 |
| 8397 | Bulk Product 74cc4496 | Home & Garden | $379.05 | 275 | ★ 1.3 | 98 | BULK-3b9a30e7 |
| 8398 | Bulk Product ecbbf1f3 | Sports & Outdoors | $898.58 | 172 | ★ 0.1 | 13 | BULK-f9ea908e |
| 8399 | Bulk Product 45a8f926 | Clothing | $969.50 | 324 | ★ 3.6 | 89 | BULK-bbfecf1e |
| 8400 | Bulk Product dba93e91 | Home & Garden | $885.28 | 324 | ★ 4.6 | 80 | BULK-34a2f68a |
| 8401 | Bulk Product 2887e433 | Toys & Games | $57.80 | 476 | ★ 2.1 | 66 | BULK-2c70e040 |
| 8402 | Bulk Product d02ddb58 | Electronics | $453.44 | 283 | ★ 3.5 | 78 | BULK-89f27a04 |
| 8403 | Bulk Product d7a9601f | Electronics | $378.15 | 95 | ★ 2.0 | 92 | BULK-efa33a8f |
| 8404 | Bulk Product 803d24ba | Electronics | $368.59 | 107 | ★ 0.9 | 65 | BULK-45031b24 |
| 8405 | Bulk Product 4bb8f224 | Sports & Outdoors | $418.84 | 451 | ★ 4.3 | 27 | BULK-2f9be982 |
| 8406 | Bulk Product ab883624 | Sports & Outdoors | $956.44 | 90 | ★ 4.0 | 96 | BULK-91e3151f |
| 8407 | Bulk Product eab428a5 | Clothing | $233.26 | 152 | ★ 4.7 | 25 | BULK-df9f7057 |
| 8408 | Bulk Product a08928d3 | Toys & Games | $609.35 | 164 | ★ 3.8 | 22 | BULK-fbf34ee0 |
| 8409 | Bulk Product 951a4f20 | Electronics | $894.52 | 470 | ★ 0.6 | 70 | BULK-9652057b |
// 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
};
}