Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 12110 | Bulk Product 43f89236 | Sports & Outdoors | $880.43 | 10 | ★ 2.4 | 81 | BULK-a1d5c88d |
| 12111 | Bulk Product b5171604 | Sports & Outdoors | $656.11 | 255 | ★ 2.0 | 41 | BULK-aa8d16ae |
| 12112 | Bulk Product bbabce0d | Electronics | $559.64 | 279 | ★ 2.7 | 39 | BULK-cf943c35 |
| 12113 | Bulk Product 6819ace5 | Toys & Games | $228.85 | 489 | ★ 1.2 | 83 | BULK-f376e87c |
| 12114 | Bulk Product d3066af6 | Sports & Outdoors | $861.41 | 169 | ★ 0.8 | 98 | BULK-1f6e4e99 |
| 12115 | Bulk Product f2409eda | Clothing | $505.59 | 190 | ★ 2.7 | 28 | BULK-3c7122e7 |
| 12116 | Bulk Product f73734fe | Books | $89.39 | 442 | ★ 1.2 | 50 | BULK-8c4210f0 |
| 12117 | Bulk Product 515523e0 | Home & Garden | $226.59 | 463 | ★ 0.8 | 38 | BULK-5ff80a3b |
| 12118 | Bulk Product 746bcb02 | Toys & Games | $228.11 | 387 | ★ 3.5 | 16 | BULK-55e4eea6 |
| 12119 | Bulk Product 6b330ad4 | Electronics | $485.10 | 299 | ★ 0.1 | 45 | BULK-9ac52818 |
| 12120 | Bulk Product 9c552d58 | Home & Garden | $255.73 | 485 | ★ 2.8 | 48 | BULK-ec0442e2 |
| 12121 | Bulk Product c73aa4bf | Home & Garden | $824.73 | 259 | ★ 4.1 | 5 | BULK-fef2f9b7 |
| 12122 | Bulk Product 498b5adc | Electronics | $168.70 | 475 | ★ 3.6 | 98 | BULK-4a4bef8c |
| 12123 | Bulk Product 82e55dd9 | Electronics | $407.68 | 267 | ★ 4.5 | 40 | BULK-4a9d5c37 |
| 12124 | Bulk Product 00ef4a07 | Toys & Games | $897.97 | 119 | ★ 0.9 | 96 | BULK-05b764d1 |
| 12125 | Bulk Product f8b6fddc | Sports & Outdoors | $858.14 | 498 | ★ 2.7 | 32 | BULK-cc3f87d4 |
| 12126 | Bulk Product 579711a0 | Books | $638.21 | 147 | ★ 1.9 | 90 | BULK-284915c4 |
| 12127 | Bulk Product d3e3f3a1 | Home & Garden | $931.12 | 281 | ★ 2.0 | 16 | BULK-ff1b305f |
| 12128 | Bulk Product 7862dcef | Electronics | $39.66 | 422 | ★ 3.1 | 48 | BULK-9d32452f |
| 12129 | Bulk Product 691855cd | Electronics | $889.60 | 460 | ★ 2.8 | 50 | BULK-185f6069 |
| 12130 | Bulk Product ad6dbdd9 | Books | $209.08 | 136 | ★ 3.5 | 69 | BULK-f3e8adbb |
| 12131 | Bulk Product dd04bf41 | Electronics | $724.31 | 28 | ★ 3.1 | 65 | BULK-9979aefe |
| 12132 | Bulk Product 455b867a | Toys & Games | $270.04 | 322 | ★ 1.3 | 61 | BULK-86b0bbea |
| 12133 | Bulk Product bf04d634 | Clothing | $433.67 | 249 | ★ 4.4 | 99 | BULK-bbaf049f |
| 12134 | Bulk Product 1610cf1b | Sports & Outdoors | $297.60 | 480 | ★ 3.1 | 78 | BULK-12bc6260 |
| 12135 | Bulk Product e3d8ffee | Electronics | $580.15 | 68 | ★ 4.7 | 34 | BULK-f7222527 |
| 12136 | Bulk Product 1ddb10a9 | Home & Garden | $851.86 | 265 | ★ 0.1 | 41 | BULK-8db6e52b |
| 12137 | Bulk Product 2b60f23f | Home & Garden | $815.66 | 14 | ★ 4.6 | 7 | BULK-75b56adf |
| 12138 | Bulk Product 0d699360 | Home & Garden | $686.14 | 42 | ★ 2.6 | 15 | BULK-8bb3b312 |
| 12139 | Bulk Product e54f988f | Toys & Games | $731.37 | 144 | ★ 1.3 | 54 | BULK-09520305 |
| 12140 | Bulk Product 9efa0482 | Electronics | $496.81 | 418 | ★ 4.4 | 68 | BULK-2f673b7b |
| 12141 | Bulk Product c571e533 | Clothing | $643.12 | 198 | ★ 4.0 | 76 | BULK-b5b41023 |
| 12142 | Bulk Product a183d385 | Books | $790.39 | 481 | ★ 4.4 | 96 | BULK-c0210a00 |
| 12143 | Bulk Product 9fc37ff9 | Sports & Outdoors | $99.58 | 288 | ★ 1.2 | 92 | BULK-fff8cc3f |
| 12144 | Bulk Product 19c603d3 | Sports & Outdoors | $559.87 | 143 | ★ 2.2 | 90 | BULK-002a5af8 |
| 12145 | Bulk Product 0660cd03 | Electronics | $749.91 | 354 | ★ 4.1 | 27 | BULK-34849c69 |
| 12146 | Bulk Product 246fe1c6 | Electronics | $702.65 | 118 | ★ 2.7 | 27 | BULK-15d99c14 |
| 12147 | Bulk Product 247ce5b5 | Toys & Games | $94.13 | 327 | ★ 4.0 | 22 | BULK-98c88041 |
| 12148 | Bulk Product 1679240a | Toys & Games | $505.43 | 172 | ★ 2.1 | 75 | BULK-cf57d8da |
| 12149 | Bulk Product af8076e1 | Sports & Outdoors | $725.90 | 343 | ★ 2.8 | 10 | BULK-cc9c95ad |
| 12150 | Bulk Product 90158656 | Toys & Games | $527.45 | 8 | ★ 1.4 | 91 | BULK-9469ef90 |
| 12151 | Bulk Product 872f97e5 | Books | $992.06 | 403 | ★ 3.8 | 96 | BULK-897be30c |
| 12152 | Bulk Product bcc0115c | Sports & Outdoors | $906.65 | 477 | ★ 4.5 | 27 | BULK-2cc0f3d2 |
| 12153 | Bulk Product e517bc93 | Clothing | $788.76 | 475 | ★ 0.2 | 99 | BULK-0d5d77c7 |
| 12154 | Bulk Product 7f2c0630 | Home & Garden | $322.33 | 312 | ★ 1.2 | 26 | BULK-63ac8431 |
| 12155 | Bulk Product be3ab33a | Clothing | $935.02 | 35 | ★ 0.0 | 2 | BULK-ba3803c5 |
| 12156 | Bulk Product cd7fafc2 | Home & Garden | $215.42 | 489 | ★ 3.4 | 22 | BULK-04432052 |
| 12157 | Bulk Product 72e24975 | Books | $73.04 | 143 | ★ 4.7 | 98 | BULK-03cac2c9 |
| 12158 | Bulk Product d3d19d2f | Home & Garden | $133.79 | 324 | ★ 4.1 | 96 | BULK-dc7c0c33 |
| 12159 | Bulk Product 17916d98 | Toys & Games | $312.98 | 39 | ★ 0.9 | 39 | BULK-d3357ef6 |
// 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
};
}