Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 8260 | Bulk Product 20d84499 | Toys & Games | $747.00 | 349 | ★ 2.2 | 28 | BULK-ee0e7323 |
| 8261 | Bulk Product 15d9d5a4 | Books | $375.37 | 110 | ★ 2.3 | 32 | BULK-378e0aef |
| 8262 | Bulk Product 80c37ae0 | Toys & Games | $464.14 | 79 | ★ 4.8 | 19 | BULK-e110a315 |
| 8263 | Bulk Product 536e8309 | Electronics | $858.73 | 114 | ★ 1.7 | 19 | BULK-57ba8b44 |
| 8264 | Bulk Product 3d323a88 | Books | $206.09 | 87 | ★ 2.0 | 19 | BULK-48cc4820 |
| 8265 | Bulk Product b4893ee9 | Clothing | $876.86 | 155 | ★ 4.0 | 14 | BULK-8c232f75 |
| 8266 | Bulk Product 4f703ec2 | Toys & Games | $439.30 | 405 | ★ 1.9 | 18 | BULK-f878c4ca |
| 8267 | Bulk Product 046672a0 | Toys & Games | $27.92 | 464 | ★ 1.1 | 91 | BULK-6eaf8ec7 |
| 8268 | Bulk Product 4623ae78 | Sports & Outdoors | $699.62 | 421 | ★ 1.4 | 10 | BULK-5b4ee052 |
| 8269 | Bulk Product 83824dda | Books | $112.01 | 244 | ★ 1.9 | 98 | BULK-f0316415 |
| 8270 | Bulk Product 7a7f082d | Toys & Games | $196.36 | 114 | ★ 1.9 | 53 | BULK-6c085fe5 |
| 8271 | Bulk Product c1a83681 | Home & Garden | $305.85 | 72 | ★ 1.0 | 11 | BULK-61ca213a |
| 8272 | Bulk Product 18f7f6c1 | Toys & Games | $399.40 | 73 | ★ 2.2 | 86 | BULK-0a68c939 |
| 8273 | Bulk Product 031294d3 | Clothing | $72.00 | 186 | ★ 2.1 | 81 | BULK-14dd40a1 |
| 8274 | Bulk Product 982d07b9 | Books | $49.41 | 330 | ★ 0.7 | 74 | BULK-d3992fef |
| 8275 | Bulk Product 321ee55c | Toys & Games | $464.07 | 332 | ★ 4.3 | 34 | BULK-bc8239ec |
| 8276 | Bulk Product 5add8a93 | Sports & Outdoors | $226.30 | 61 | ★ 0.9 | 55 | BULK-d3f11f16 |
| 8277 | Bulk Product 066d84fd | Clothing | $598.79 | 359 | ★ 0.5 | 24 | BULK-2c4eacf8 |
| 8278 | Bulk Product c231607c | Electronics | $463.09 | 451 | ★ 1.6 | 22 | BULK-e0cb8000 |
| 8279 | Bulk Product c7e9bdc6 | Clothing | $198.52 | 163 | ★ 3.5 | 45 | BULK-75a33be2 |
| 8280 | Bulk Product ef46dae0 | Home & Garden | $547.59 | 302 | ★ 4.9 | 56 | BULK-b3da6b5c |
| 8281 | Bulk Product 3e28d2e1 | Books | $959.01 | 186 | ★ 4.9 | 80 | BULK-6a3abd01 |
| 8282 | Bulk Product c0423e9c | Home & Garden | $336.76 | 217 | ★ 1.9 | 28 | BULK-7f69cb0b |
| 8283 | Bulk Product 244da6c3 | Toys & Games | $25.80 | 464 | ★ 1.7 | 23 | BULK-77b16e1c |
| 8284 | Bulk Product 17fc9df7 | Sports & Outdoors | $384.23 | 65 | ★ 0.1 | 44 | BULK-8e15fd97 |
| 8285 | Bulk Product 05e01775 | Toys & Games | $94.66 | 28 | ★ 0.0 | 56 | BULK-f15b0691 |
| 8286 | Bulk Product 5264bdaf | Toys & Games | $387.02 | 99 | ★ 4.8 | 1 | BULK-42847790 |
| 8287 | Bulk Product f1e7d80d | Books | $785.36 | 178 | ★ 3.7 | 19 | BULK-ae0b3d15 |
| 8288 | Bulk Product 7d09d413 | Electronics | $973.70 | 114 | ★ 1.7 | 80 | BULK-ddd1c495 |
| 8289 | Bulk Product 5b95d309 | Sports & Outdoors | $411.59 | 325 | ★ 3.0 | 22 | BULK-d8115481 |
| 8290 | Bulk Product 354b3a8c | Books | $381.79 | 436 | ★ 2.1 | 6 | BULK-128ca499 |
| 8291 | Bulk Product f265ec67 | Electronics | $349.94 | 2 | ★ 5.0 | 38 | BULK-2547ae38 |
| 8292 | Bulk Product 0140433a | Home & Garden | $345.82 | 58 | ★ 0.2 | 72 | BULK-1ab40de4 |
| 8293 | Bulk Product 5f1f5aa9 | Sports & Outdoors | $692.86 | 190 | ★ 0.6 | 4 | BULK-01252486 |
| 8294 | Bulk Product 004e2066 | Sports & Outdoors | $106.02 | 62 | ★ 2.2 | 37 | BULK-8bf7c763 |
| 8295 | Bulk Product db2f88cf | Clothing | $184.46 | 3 | ★ 1.5 | 44 | BULK-0fc8841c |
| 8296 | Bulk Product 3926d83b | Books | $225.76 | 139 | ★ 0.1 | 92 | BULK-319065db |
| 8297 | Bulk Product 626a4278 | Electronics | $629.13 | 169 | ★ 2.1 | 0 | BULK-ce3b35df |
| 8298 | Bulk Product d3cd87a6 | Sports & Outdoors | $19.53 | 128 | ★ 0.1 | 7 | BULK-7271fd0b |
| 8299 | Bulk Product bcc8a68d | Sports & Outdoors | $417.91 | 334 | ★ 0.0 | 15 | BULK-16043fb1 |
| 8300 | Bulk Product d103e30c | Sports & Outdoors | $29.88 | 461 | ★ 2.9 | 33 | BULK-6ec38b6c |
| 8301 | Bulk Product 8f7ce973 | Toys & Games | $74.68 | 400 | ★ 4.0 | 4 | BULK-6c1c5f7e |
| 8302 | Bulk Product 3f63cfea | Sports & Outdoors | $326.44 | 198 | ★ 0.7 | 21 | BULK-d636c989 |
| 8303 | Bulk Product 1104aa17 | Electronics | $692.60 | 377 | ★ 0.2 | 33 | BULK-a9403d1d |
| 8304 | Bulk Product 8b12e769 | Electronics | $178.64 | 205 | ★ 0.8 | 29 | BULK-24dca842 |
| 8305 | Bulk Product e218dcf0 | Home & Garden | $1,001.92 | 164 | ★ 3.8 | 29 | BULK-78ce1e19 |
| 8306 | Bulk Product 7b4b15f4 | Sports & Outdoors | $415.34 | 346 | ★ 1.4 | 11 | BULK-2b584a6b |
| 8307 | Bulk Product 008fe4b7 | Sports & Outdoors | $659.82 | 215 | ★ 3.2 | 65 | BULK-215a9dd9 |
| 8308 | Bulk Product 2e8b5959 | Sports & Outdoors | $791.12 | 201 | ★ 0.9 | 72 | BULK-97f8253a |
| 8309 | Bulk Product f9a6a868 | Home & Garden | $580.55 | 345 | ★ 4.0 | 73 | BULK-9c3efd15 |
// 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
};
}