Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 11210 | Bulk Product f2f9f77c | Books | $822.36 | 160 | ★ 2.1 | 55 | BULK-d3ec82e5 |
| 11211 | Bulk Product 4e599ee9 | Toys & Games | $116.73 | 335 | ★ 1.3 | 65 | BULK-972a266f |
| 11212 | Bulk Product 1545fe50 | Toys & Games | $958.74 | 98 | ★ 4.6 | 88 | BULK-79b03cbd |
| 11213 | Bulk Product 3873af37 | Books | $864.98 | 353 | ★ 0.9 | 24 | BULK-effe4d5a |
| 11214 | Bulk Product 12afc0e2 | Books | $857.76 | 89 | ★ 4.7 | 7 | BULK-c9b10f70 |
| 11215 | Bulk Product 242edaa8 | Electronics | $86.19 | 74 | ★ 2.1 | 86 | BULK-e2b4dfe1 |
| 11216 | Bulk Product e858dfd1 | Electronics | $756.49 | 50 | ★ 0.8 | 64 | BULK-ef8c37b8 |
| 11217 | Bulk Product 14f8c9d6 | Home & Garden | $697.01 | 122 | ★ 4.4 | 86 | BULK-e99bd4cf |
| 11218 | Bulk Product eeaa651e | Clothing | $399.28 | 229 | ★ 1.3 | 80 | BULK-d5d06c86 |
| 11219 | Bulk Product 221ac417 | Home & Garden | $202.30 | 303 | ★ 3.9 | 29 | BULK-05f10c0f |
| 11220 | Bulk Product 905d7361 | Clothing | $595.81 | 346 | ★ 1.7 | 20 | BULK-8bfa8f83 |
| 11221 | Bulk Product c97d873e | Toys & Games | $423.11 | 115 | ★ 4.6 | 91 | BULK-96cee8dd |
| 11222 | Bulk Product b7797880 | Toys & Games | $472.66 | 398 | ★ 3.7 | 76 | BULK-d6eb0181 |
| 11223 | Bulk Product 8fa9399b | Sports & Outdoors | $257.49 | 212 | ★ 1.8 | 41 | BULK-c6045126 |
| 11224 | Bulk Product bf8ee326 | Books | $545.11 | 293 | ★ 3.8 | 66 | BULK-8e9dd87a |
| 11225 | Bulk Product abcdf82a | Books | $833.17 | 334 | ★ 3.8 | 80 | BULK-3da55eca |
| 11226 | Bulk Product 455febf4 | Books | $121.54 | 357 | ★ 2.1 | 39 | BULK-0b8085f6 |
| 11227 | Bulk Product ca442415 | Books | $542.24 | 242 | ★ 3.8 | 24 | BULK-2e659960 |
| 11228 | Bulk Product c5f18650 | Toys & Games | $32.02 | 19 | ★ 0.2 | 49 | BULK-1fd1e3b8 |
| 11229 | Bulk Product 38c04735 | Home & Garden | $142.28 | 241 | ★ 2.8 | 96 | BULK-bf085e8d |
| 11230 | Bulk Product f7e13013 | Books | $305.44 | 299 | ★ 1.7 | 83 | BULK-90e17d5d |
| 11231 | Bulk Product 906ba399 | Home & Garden | $370.61 | 15 | ★ 3.4 | 68 | BULK-9c82186c |
| 11232 | Bulk Product b9d39eb8 | Toys & Games | $523.04 | 165 | ★ 2.6 | 4 | BULK-14b7b640 |
| 11233 | Bulk Product b45fe8e0 | Toys & Games | $928.33 | 7 | ★ 4.5 | 50 | BULK-65dcb732 |
| 11234 | Bulk Product 25a83968 | Books | $802.57 | 10 | ★ 0.5 | 97 | BULK-30f5515a |
| 11235 | Bulk Product 123ca437 | Sports & Outdoors | $590.15 | 13 | ★ 0.8 | 17 | BULK-843ba732 |
| 11236 | Bulk Product 2beb65d9 | Electronics | $601.65 | 231 | ★ 0.1 | 48 | BULK-244da4a6 |
| 11237 | Bulk Product 97565b8d | Home & Garden | $18.64 | 138 | ★ 2.0 | 83 | BULK-d1d0df2e |
| 11238 | Bulk Product 6263a809 | Home & Garden | $169.24 | 39 | ★ 0.5 | 55 | BULK-16ec46af |
| 11239 | Bulk Product 3a70814b | Home & Garden | $423.73 | 406 | ★ 5.0 | 18 | BULK-43661903 |
| 11240 | Bulk Product 7b0c1dae | Books | $127.37 | 382 | ★ 4.1 | 7 | BULK-a512831d |
| 11241 | Bulk Product c3c2c5f6 | Home & Garden | $320.99 | 163 | ★ 2.9 | 78 | BULK-0304d0c2 |
| 11242 | Bulk Product 4528a579 | Electronics | $923.69 | 102 | ★ 3.2 | 67 | BULK-f015276d |
| 11243 | Bulk Product 0ec482af | Sports & Outdoors | $45.07 | 466 | ★ 3.7 | 41 | BULK-8226c0b1 |
| 11244 | Bulk Product ea24902b | Home & Garden | $279.83 | 410 | ★ 0.6 | 31 | BULK-bbdd0753 |
| 11245 | Bulk Product 80fabf2b | Toys & Games | $258.12 | 31 | ★ 1.5 | 14 | BULK-3becf676 |
| 11246 | Bulk Product ddea1036 | Home & Garden | $308.62 | 276 | ★ 1.5 | 39 | BULK-0d8240d5 |
| 11247 | Bulk Product c973a387 | Toys & Games | $1,002.30 | 366 | ★ 0.4 | 38 | BULK-ebbc7a3e |
| 11248 | Bulk Product c268a002 | Toys & Games | $852.21 | 342 | ★ 2.4 | 14 | BULK-93bc3803 |
| 11249 | Bulk Product 0c739b50 | Sports & Outdoors | $801.45 | 420 | ★ 4.8 | 18 | BULK-36a5d2fd |
| 11250 | Bulk Product 698bdcd2 | Books | $184.38 | 41 | ★ 1.9 | 91 | BULK-bddacf76 |
| 11251 | Bulk Product 12547af9 | Toys & Games | $757.85 | 370 | ★ 2.6 | 11 | BULK-3ddcbd74 |
| 11252 | Bulk Product 02c3be01 | Electronics | $153.39 | 197 | ★ 4.6 | 43 | BULK-3a226f5f |
| 11253 | Bulk Product 397d0e14 | Toys & Games | $119.43 | 183 | ★ 0.3 | 69 | BULK-9d3e5707 |
| 11254 | Bulk Product 28895b15 | Clothing | $10.43 | 210 | ★ 4.4 | 43 | BULK-2732a165 |
| 11255 | Bulk Product 986936c4 | Sports & Outdoors | $324.86 | 107 | ★ 0.4 | 6 | BULK-4af28eaf |
| 11256 | Bulk Product d63202c8 | Electronics | $155.59 | 390 | ★ 3.0 | 46 | BULK-59a2e509 |
| 11257 | Bulk Product a032ef00 | Books | $31.14 | 449 | ★ 3.5 | 12 | BULK-08ec94d7 |
| 11258 | Bulk Product b70f3cc4 | Clothing | $406.47 | 175 | ★ 4.6 | 74 | BULK-4395ecde |
| 11259 | Bulk Product 4dc13047 | Clothing | $913.04 | 116 | ★ 3.5 | 87 | BULK-b4b4e2c3 |
// 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
};
}