Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 10960 | Bulk Product b87bba46 | Electronics | $523.39 | 498 | ★ 1.7 | 44 | BULK-c053a810 |
| 10961 | Bulk Product ea4fb768 | Electronics | $178.00 | 437 | ★ 3.4 | 80 | BULK-865b0e6e |
| 10962 | Bulk Product 2cb28d02 | Toys & Games | $434.65 | 291 | ★ 3.9 | 65 | BULK-da224ff0 |
| 10963 | Bulk Product 0067ee0b | Home & Garden | $181.91 | 161 | ★ 2.4 | 48 | BULK-c4c88348 |
| 10964 | Bulk Product 3e747241 | Toys & Games | $702.30 | 427 | ★ 3.4 | 21 | BULK-ee6ca055 |
| 10965 | Bulk Product 169d7c96 | Sports & Outdoors | $295.73 | 120 | ★ 3.3 | 28 | BULK-135ff2ae |
| 10966 | Bulk Product 8e828d3e | Clothing | $868.99 | 304 | ★ 1.3 | 61 | BULK-e1f53705 |
| 10967 | Bulk Product 75e9156d | Clothing | $377.33 | 143 | ★ 2.9 | 71 | BULK-69bea66b |
| 10968 | Bulk Product 4208053b | Home & Garden | $124.90 | 320 | ★ 4.1 | 46 | BULK-52582fb3 |
| 10969 | Bulk Product 45790b89 | Sports & Outdoors | $897.03 | 194 | ★ 0.7 | 36 | BULK-1daa61a5 |
| 10970 | Bulk Product 26898b66 | Electronics | $775.00 | 85 | ★ 2.9 | 87 | BULK-47f06f77 |
| 10971 | Bulk Product c3666a5e | Home & Garden | $813.75 | 55 | ★ 0.1 | 67 | BULK-4a4dc80b |
| 10972 | Bulk Product aea910ba | Home & Garden | $122.29 | 159 | ★ 3.0 | 83 | BULK-9da3e7e5 |
| 10973 | Bulk Product 668451df | Toys & Games | $401.20 | 167 | ★ 1.9 | 58 | BULK-bf681679 |
| 10974 | Bulk Product 3b69a947 | Electronics | $605.65 | 221 | ★ 4.7 | 80 | BULK-f2846ce8 |
| 10975 | Bulk Product 2c67c2aa | Clothing | $555.75 | 443 | ★ 2.3 | 28 | BULK-bd6d3bc9 |
| 10976 | Bulk Product 3c873361 | Clothing | $716.50 | 191 | ★ 1.1 | 82 | BULK-b426e74e |
| 10977 | Bulk Product 6b3aaa17 | Clothing | $752.10 | 144 | ★ 0.4 | 36 | BULK-6f509203 |
| 10978 | Bulk Product 619a3306 | Electronics | $244.98 | 136 | ★ 1.0 | 25 | BULK-d5e47789 |
| 10979 | Bulk Product b54df76a | Clothing | $894.30 | 245 | ★ 3.8 | 99 | BULK-4f60be9f |
| 10980 | Bulk Product b31a9ba4 | Toys & Games | $741.31 | 120 | ★ 1.8 | 59 | BULK-cc6b9f00 |
| 10981 | Bulk Product 78121325 | Electronics | $161.50 | 389 | ★ 2.1 | 24 | BULK-f96d0c91 |
| 10982 | Bulk Product e0dd6765 | Home & Garden | $351.05 | 138 | ★ 1.3 | 71 | BULK-8a9389a3 |
| 10983 | Bulk Product 620b0ccd | Books | $516.47 | 447 | ★ 2.1 | 21 | BULK-6a961a64 |
| 10984 | Bulk Product 394784a9 | Clothing | $737.79 | 403 | ★ 4.6 | 95 | BULK-1b8bd9b0 |
| 10985 | Bulk Product e4f5d82f | Home & Garden | $445.61 | 243 | ★ 2.6 | 26 | BULK-817b200f |
| 10986 | Bulk Product 83adf26e | Books | $663.46 | 398 | ★ 0.5 | 61 | BULK-3ae7faca |
| 10987 | Bulk Product c697171c | Sports & Outdoors | $238.09 | 142 | ★ 3.7 | 95 | BULK-c6550f4f |
| 10988 | Bulk Product aa399102 | Books | $910.00 | 235 | ★ 2.6 | 27 | BULK-fdbcbad3 |
| 10989 | Bulk Product 1953b2af | Electronics | $936.31 | 345 | ★ 1.7 | 91 | BULK-280237d9 |
| 10990 | Bulk Product 9a04c933 | Books | $461.66 | 288 | ★ 1.2 | 39 | BULK-f2f908e2 |
| 10991 | Bulk Product bdd447f3 | Books | $585.60 | 402 | ★ 1.3 | 97 | BULK-005f1825 |
| 10992 | Bulk Product 253b2aa6 | Home & Garden | $670.65 | 428 | ★ 3.3 | 5 | BULK-91b1461b |
| 10993 | Bulk Product dacf73f0 | Sports & Outdoors | $465.21 | 294 | ★ 3.4 | 3 | BULK-e73d74e7 |
| 10994 | Bulk Product 00980193 | Sports & Outdoors | $541.53 | 218 | ★ 3.0 | 93 | BULK-ba43623a |
| 10995 | Bulk Product 83c56f59 | Home & Garden | $224.10 | 92 | ★ 4.5 | 7 | BULK-a4ac8a9a |
| 10996 | Bulk Product 750bec5f | Home & Garden | $552.57 | 61 | ★ 1.7 | 1 | BULK-401faf54 |
| 10997 | Bulk Product e4a0c5ee | Clothing | $304.95 | 274 | ★ 3.7 | 92 | BULK-9d804657 |
| 10998 | Bulk Product 98b3bc3a | Home & Garden | $72.79 | 498 | ★ 3.7 | 43 | BULK-6661881c |
| 10999 | Bulk Product 2ffae035 | Sports & Outdoors | $737.45 | 96 | ★ 1.3 | 64 | BULK-f802d8d3 |
| 11000 | Bulk Product ec011df1 | Home & Garden | $474.20 | 475 | ★ 3.3 | 44 | BULK-eeda1084 |
| 11001 | Bulk Product ba34fff0 | Home & Garden | $351.94 | 428 | ★ 4.8 | 72 | BULK-9558bb2d |
| 11002 | Bulk Product c1997fa0 | Toys & Games | $178.51 | 195 | ★ 5.0 | 76 | BULK-ceb68bf7 |
| 11003 | Bulk Product 8465c4a6 | Home & Garden | $237.20 | 211 | ★ 4.5 | 42 | BULK-9a24cd06 |
| 11004 | Bulk Product 5ffb91f1 | Clothing | $529.11 | 455 | ★ 4.1 | 19 | BULK-e66b2bd5 |
| 11005 | Bulk Product 1d19d410 | Books | $727.66 | 302 | ★ 3.2 | 10 | BULK-f3c7b92a |
| 11006 | Bulk Product 3d000dd0 | Toys & Games | $388.86 | 409 | ★ 5.0 | 22 | BULK-914d3358 |
| 11007 | Bulk Product 8cbe84d9 | Sports & Outdoors | $145.65 | 230 | ★ 1.5 | 4 | BULK-65ff34e8 |
| 11008 | Bulk Product 3d9cc6af | Home & Garden | $530.97 | 78 | ★ 1.4 | 11 | BULK-d4ede0aa |
| 11009 | Bulk Product 99c793ca | Clothing | $745.23 | 368 | ★ 0.5 | 76 | BULK-bf3e6a37 |
// 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
};
}