Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 5060 | Bulk Product c90fbf63 | Electronics | $151.82 | 83 | ★ 1.7 | 53 | BULK-983f7898 |
| 5061 | Bulk Product 9f22df81 | Books | $300.93 | 387 | ★ 2.6 | 45 | BULK-1df44f12 |
| 5062 | Bulk Product d91f9482 | Home & Garden | $270.86 | 378 | ★ 1.9 | 44 | BULK-de79dbb7 |
| 5063 | Bulk Product fd0f74bf | Sports & Outdoors | $886.48 | 25 | ★ 0.3 | 96 | BULK-1a46c33c |
| 5064 | Bulk Product 029f1dbe | Books | $128.00 | 257 | ★ 4.1 | 16 | BULK-83ecd1e4 |
| 5065 | Bulk Product fcd140a6 | Books | $663.36 | 192 | ★ 2.2 | 73 | BULK-8a79a0c3 |
| 5066 | Bulk Product 50fdcbc9 | Home & Garden | $817.26 | 235 | ★ 3.6 | 72 | BULK-4ad22546 |
| 5067 | Bulk Product 332ac89a | Clothing | $14.66 | 486 | ★ 4.0 | 57 | BULK-b90ab510 |
| 5068 | Bulk Product dfb64bd1 | Home & Garden | $544.01 | 352 | ★ 3.1 | 1 | BULK-df322d7a |
| 5069 | Bulk Product e597ad13 | Clothing | $624.13 | 283 | ★ 4.7 | 34 | BULK-281e8552 |
| 5070 | Bulk Product c70c1db1 | Clothing | $467.82 | 260 | ★ 4.6 | 79 | BULK-fcd43ce3 |
| 5071 | Bulk Product bd77fd42 | Sports & Outdoors | $663.26 | 370 | ★ 0.1 | 52 | BULK-d38ee2db |
| 5072 | Bulk Product 483b1258 | Toys & Games | $776.18 | 139 | ★ 0.7 | 30 | BULK-95cdddd9 |
| 5073 | Bulk Product bd6e7698 | Sports & Outdoors | $840.76 | 267 | ★ 1.8 | 59 | BULK-cc0d111a |
| 5074 | Bulk Product 1db076b3 | Home & Garden | $349.01 | 63 | ★ 3.2 | 58 | BULK-e2994625 |
| 5075 | Bulk Product e246d39e | Books | $682.47 | 176 | ★ 1.5 | 49 | BULK-76e4778c |
| 5076 | Bulk Product bf344029 | Electronics | $257.89 | 14 | ★ 0.9 | 62 | BULK-de9d0d49 |
| 5077 | Bulk Product b691d744 | Electronics | $88.72 | 411 | ★ 3.9 | 89 | BULK-53cc3318 |
| 5078 | Bulk Product c953ef04 | Toys & Games | $803.93 | 347 | ★ 1.4 | 67 | BULK-64c5e25f |
| 5079 | Bulk Product 001df130 | Books | $370.99 | 108 | ★ 2.4 | 91 | BULK-d1070f0f |
| 5080 | Bulk Product f345e7fd | Toys & Games | $405.10 | 257 | ★ 4.5 | 79 | BULK-6b12047a |
| 5081 | Bulk Product 870480e5 | Toys & Games | $282.14 | 36 | ★ 3.6 | 55 | BULK-e002532c |
| 5082 | Bulk Product 24c4e4fc | Books | $326.00 | 140 | ★ 4.8 | 83 | BULK-60acf56e |
| 5083 | Bulk Product 47fe305a | Electronics | $610.59 | 53 | ★ 1.6 | 89 | BULK-a4cf2e45 |
| 5084 | Bulk Product 7f0aaf8f | Home & Garden | $336.55 | 492 | ★ 4.2 | 29 | BULK-5f1a1919 |
| 5085 | Bulk Product 1b1b9fbc | Toys & Games | $370.57 | 292 | ★ 2.3 | 16 | BULK-d9079113 |
| 5086 | Bulk Product 388af76b | Clothing | $577.77 | 99 | ★ 0.3 | 43 | BULK-5f3494ad |
| 5087 | Bulk Product c8be8d2f | Toys & Games | $923.66 | 470 | ★ 4.1 | 40 | BULK-8632a0f4 |
| 5088 | Bulk Product 677647bf | Books | $790.42 | 437 | ★ 2.1 | 74 | BULK-21db85b4 |
| 5089 | Bulk Product abe82ddb | Electronics | $826.09 | 1 | ★ 4.3 | 94 | BULK-856a1582 |
| 5090 | Bulk Product 6d0e61d8 | Toys & Games | $779.79 | 39 | ★ 2.4 | 9 | BULK-d1c67cd1 |
| 5091 | Bulk Product 7689348b | Home & Garden | $850.47 | 355 | ★ 2.6 | 31 | BULK-8b48a25d |
| 5092 | Bulk Product 4f67de8a | Books | $42.01 | 194 | ★ 3.9 | 24 | BULK-2791b421 |
| 5093 | Bulk Product ecd2d52a | Books | $447.22 | 250 | ★ 2.2 | 0 | BULK-5c867d37 |
| 5094 | Bulk Product a6270d7b | Books | $421.16 | 83 | ★ 0.1 | 97 | BULK-e36bda46 |
| 5095 | Bulk Product eba66682 | Home & Garden | $89.77 | 308 | ★ 0.0 | 20 | BULK-3fcd7bae |
| 5096 | Bulk Product 348867f4 | Books | $213.44 | 165 | ★ 4.0 | 97 | BULK-7db851bb |
| 5097 | Bulk Product 83248349 | Electronics | $337.16 | 251 | ★ 3.6 | 48 | BULK-efe01ce9 |
| 5098 | Bulk Product 7abbeb89 | Toys & Games | $562.56 | 459 | ★ 2.0 | 44 | BULK-db2f297c |
| 5099 | Bulk Product eeaee5a5 | Books | $420.48 | 471 | ★ 4.9 | 98 | BULK-fac2c21a |
| 5100 | Bulk Product 7f2dd930 | Toys & Games | $40.27 | 297 | ★ 2.3 | 31 | BULK-5b0ff847 |
| 5101 | Bulk Product 46d3376d | Toys & Games | $529.31 | 314 | ★ 3.6 | 5 | BULK-016e9127 |
| 5102 | Bulk Product 1bd4d697 | Home & Garden | $321.40 | 389 | ★ 3.2 | 27 | BULK-aeaaf66b |
| 5103 | Bulk Product cada88ed | Clothing | $512.81 | 267 | ★ 2.2 | 1 | BULK-220d339c |
| 5104 | Bulk Product 379ec181 | Clothing | $214.09 | 258 | ★ 4.4 | 61 | BULK-f29c8ad2 |
| 5105 | Bulk Product 9e8dbda1 | Toys & Games | $229.85 | 162 | ★ 1.6 | 95 | BULK-023489d8 |
| 5106 | Bulk Product 2a9cc591 | Toys & Games | $982.66 | 171 | ★ 2.3 | 9 | BULK-06154e8f |
| 5107 | Bulk Product e1885da7 | Sports & Outdoors | $879.68 | 203 | ★ 2.4 | 55 | BULK-b61afb9f |
| 5108 | Bulk Product 8cbe618c | Home & Garden | $652.28 | 103 | ★ 2.9 | 89 | BULK-2202d3b2 |
| 5109 | Bulk Product a6cdc97f | Toys & Games | $878.69 | 376 | ★ 0.7 | 20 | BULK-28fba2e1 |
// 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
};
}