Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 6110 | Bulk Product 02fc1eee | Books | $293.05 | 157 | ★ 4.8 | 46 | BULK-e2816304 |
| 6111 | Bulk Product d1598e24 | Electronics | $246.01 | 408 | ★ 4.9 | 84 | BULK-cfa9b5bd |
| 6112 | Bulk Product 1d184f5f | Electronics | $857.02 | 4 | ★ 4.0 | 71 | BULK-4b366ca6 |
| 6113 | Bulk Product 6c1b8388 | Electronics | $779.60 | 235 | ★ 4.8 | 85 | BULK-31b1c2b4 |
| 6114 | Bulk Product 9deef4ff | Clothing | $634.95 | 99 | ★ 1.1 | 74 | BULK-f1bcccf5 |
| 6115 | Bulk Product 52b4307e | Books | $678.67 | 421 | ★ 5.0 | 5 | BULK-82a634ec |
| 6116 | Bulk Product ca3cbe41 | Books | $405.35 | 482 | ★ 4.6 | 30 | BULK-e6793330 |
| 6117 | Bulk Product e372167b | Toys & Games | $373.29 | 198 | ★ 3.8 | 93 | BULK-25cc8fb4 |
| 6118 | Bulk Product fcb2f0da | Sports & Outdoors | $515.69 | 442 | ★ 3.7 | 87 | BULK-74dea9f0 |
| 6119 | Bulk Product 35d71e95 | Sports & Outdoors | $223.49 | 365 | ★ 0.4 | 15 | BULK-0483d64e |
| 6120 | Bulk Product c7889d9b | Electronics | $631.58 | 75 | ★ 3.3 | 42 | BULK-bf79f967 |
| 6121 | Bulk Product 46b84501 | Sports & Outdoors | $43.41 | 9 | ★ 3.8 | 88 | BULK-6bc3d040 |
| 6122 | Bulk Product 63d4f23a | Home & Garden | $703.06 | 272 | ★ 0.8 | 37 | BULK-8e5cd9d8 |
| 6123 | Bulk Product 51de6f5c | Toys & Games | $240.06 | 306 | ★ 2.5 | 16 | BULK-232878bf |
| 6124 | Bulk Product 99471e66 | Home & Garden | $652.86 | 174 | ★ 1.3 | 37 | BULK-1732fc43 |
| 6125 | Bulk Product 334cee24 | Home & Garden | $669.11 | 174 | ★ 0.3 | 79 | BULK-a90c3634 |
| 6126 | Bulk Product 2d8174e2 | Toys & Games | $899.50 | 101 | ★ 2.8 | 64 | BULK-399e8e50 |
| 6127 | Bulk Product 5d91c536 | Sports & Outdoors | $198.73 | 409 | ★ 3.1 | 75 | BULK-c38cfaf0 |
| 6128 | Bulk Product 93f82318 | Sports & Outdoors | $349.66 | 222 | ★ 1.3 | 43 | BULK-ca22a321 |
| 6129 | Bulk Product d39e688c | Clothing | $149.10 | 306 | ★ 1.9 | 28 | BULK-4afeebf1 |
| 6130 | Bulk Product 96fc6705 | Electronics | $126.18 | 162 | ★ 2.0 | 41 | BULK-e1eef375 |
| 6131 | Bulk Product 1eea73db | Toys & Games | $942.30 | 52 | ★ 4.2 | 26 | BULK-035ed5ae |
| 6132 | Bulk Product 7259e3dc | Books | $102.35 | 222 | ★ 1.3 | 65 | BULK-5ffd0f3e |
| 6133 | Bulk Product fe21e400 | Sports & Outdoors | $158.86 | 143 | ★ 4.2 | 10 | BULK-f476cc93 |
| 6134 | Bulk Product 65f52a94 | Clothing | $544.00 | 211 | ★ 2.1 | 56 | BULK-af75b452 |
| 6135 | Bulk Product d249498c | Clothing | $60.37 | 260 | ★ 2.1 | 63 | BULK-e0649424 |
| 6136 | Bulk Product 8f902e49 | Books | $52.52 | 142 | ★ 0.4 | 64 | BULK-bf748c16 |
| 6137 | Bulk Product 49951bb8 | Books | $710.71 | 243 | ★ 4.7 | 31 | BULK-0854a45e |
| 6138 | Bulk Product 69de915d | Home & Garden | $915.33 | 198 | ★ 0.1 | 84 | BULK-a4786241 |
| 6139 | Bulk Product 9e02198e | Electronics | $528.17 | 378 | ★ 1.5 | 22 | BULK-3a260ca4 |
| 6140 | Bulk Product 3c9fc747 | Toys & Games | $150.56 | 445 | ★ 0.2 | 80 | BULK-70819bd7 |
| 6141 | Bulk Product b26bbad8 | Electronics | $615.39 | 291 | ★ 1.9 | 40 | BULK-df3290bf |
| 6142 | Bulk Product f985c6c2 | Home & Garden | $786.66 | 47 | ★ 1.6 | 64 | BULK-3ea17635 |
| 6143 | Bulk Product fab39cad | Home & Garden | $728.45 | 362 | ★ 1.5 | 11 | BULK-e491bd40 |
| 6144 | Bulk Product ec857b86 | Books | $67.06 | 377 | ★ 2.1 | 76 | BULK-769aaac1 |
| 6145 | Bulk Product 80a105aa | Clothing | $173.78 | 204 | ★ 2.5 | 50 | BULK-de96f201 |
| 6146 | Bulk Product 11f306e7 | Clothing | $589.59 | 161 | ★ 1.5 | 42 | BULK-d858e1ab |
| 6147 | Bulk Product f7e9f93c | Home & Garden | $952.61 | 429 | ★ 4.4 | 41 | BULK-f94ed27d |
| 6148 | Bulk Product ce88e0b0 | Books | $976.69 | 334 | ★ 2.3 | 77 | BULK-02e434ab |
| 6149 | Bulk Product 16518b3f | Sports & Outdoors | $940.95 | 447 | ★ 4.8 | 27 | BULK-41d17710 |
| 6150 | Bulk Product 185599f5 | Sports & Outdoors | $502.82 | 216 | ★ 5.0 | 56 | BULK-e497b627 |
| 6151 | Bulk Product 865be29d | Clothing | $954.24 | 484 | ★ 2.4 | 15 | BULK-e238deb8 |
| 6152 | Bulk Product 5f341ad4 | Electronics | $319.52 | 114 | ★ 0.6 | 58 | BULK-d0e86527 |
| 6153 | Bulk Product 94362009 | Home & Garden | $798.09 | 190 | ★ 0.4 | 61 | BULK-3a0f85aa |
| 6154 | Bulk Product a1a0455e | Books | $587.52 | 454 | ★ 2.1 | 12 | BULK-f250d189 |
| 6155 | Bulk Product 847d0cd8 | Home & Garden | $637.34 | 112 | ★ 1.7 | 24 | BULK-4eb5f35c |
| 6156 | Bulk Product 009fa058 | Clothing | $523.39 | 227 | ★ 1.5 | 70 | BULK-9f3c8937 |
| 6157 | Bulk Product e240b20c | Electronics | $590.70 | 462 | ★ 1.4 | 11 | BULK-225e829f |
| 6158 | Bulk Product 11709eee | Clothing | $314.32 | 94 | ★ 1.2 | 99 | BULK-7026247d |
| 6159 | Bulk Product adcd3301 | Home & Garden | $127.81 | 424 | ★ 1.2 | 90 | BULK-8bc096d2 |
// 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
};
}