Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 22760 | Bulk Product ac33c255 | Books | $754.40 | 368 | ★ 3.0 | 37 | BULK-8c069807 |
| 22761 | Bulk Product 5e6af62b | Electronics | $626.43 | 181 | ★ 4.7 | 2 | BULK-9e0c82db |
| 22762 | Bulk Product de492824 | Home & Garden | $751.37 | 205 | ★ 3.0 | 79 | BULK-16a2b4d3 |
| 22763 | Bulk Product 2c9d6b87 | Books | $655.79 | 305 | ★ 2.4 | 69 | BULK-095d0137 |
| 22764 | Bulk Product f8dd8995 | Toys & Games | $893.24 | 298 | ★ 0.1 | 60 | BULK-c0c073be |
| 22765 | Bulk Product 07faf390 | Toys & Games | $57.64 | 215 | ★ 4.7 | 79 | BULK-5142ff87 |
| 22766 | Bulk Product 89d13df3 | Electronics | $668.24 | 119 | ★ 2.5 | 81 | BULK-5801599e |
| 22767 | Bulk Product ef1fccc3 | Clothing | $887.94 | 461 | ★ 0.3 | 36 | BULK-2ae360a4 |
| 22768 | Bulk Product bda14bcd | Clothing | $569.04 | 84 | ★ 3.3 | 90 | BULK-2ab458c6 |
| 22769 | Bulk Product 5c987145 | Toys & Games | $616.03 | 138 | ★ 4.7 | 17 | BULK-52b1917d |
| 22770 | Bulk Product 7c74840b | Toys & Games | $579.53 | 434 | ★ 1.0 | 34 | BULK-00da8ac7 |
| 22771 | Bulk Product f3f157b6 | Toys & Games | $420.91 | 307 | ★ 4.9 | 48 | BULK-79dd97b7 |
| 22772 | Bulk Product e8e6c521 | Clothing | $578.87 | 142 | ★ 0.6 | 1 | BULK-1b85f0de |
| 22773 | Bulk Product d0fda2fe | Toys & Games | $355.00 | 107 | ★ 1.4 | 68 | BULK-072ed0dc |
| 22774 | Bulk Product 8cec4feb | Toys & Games | $299.69 | 111 | ★ 2.1 | 78 | BULK-6c3b2213 |
| 22775 | Bulk Product 1c08e803 | Sports & Outdoors | $781.83 | 420 | ★ 3.1 | 73 | BULK-42d2cc60 |
| 22776 | Bulk Product f72b3399 | Clothing | $838.98 | 165 | ★ 2.1 | 77 | BULK-ceb8c16e |
| 22777 | Bulk Product d12ab782 | Clothing | $308.21 | 432 | ★ 1.2 | 78 | BULK-5f8ccdec |
| 22778 | Bulk Product c9fc9844 | Sports & Outdoors | $755.37 | 82 | ★ 0.7 | 11 | BULK-451f15c2 |
| 22779 | Bulk Product b0140aab | Sports & Outdoors | $936.44 | 377 | ★ 3.9 | 9 | BULK-08e8ec79 |
| 22780 | Bulk Product 6c12eb29 | Sports & Outdoors | $447.04 | 37 | ★ 3.8 | 67 | BULK-31a5e10b |
| 22781 | Bulk Product ae6646db | Clothing | $626.06 | 95 | ★ 0.8 | 95 | BULK-bdf3fa0d |
| 22782 | Bulk Product 2450badd | Books | $779.10 | 280 | ★ 0.5 | 17 | BULK-af45f6a3 |
| 22783 | Bulk Product 28cabc0f | Electronics | $809.18 | 69 | ★ 0.1 | 37 | BULK-eba207ce |
| 22784 | Bulk Product da9d9a20 | Clothing | $481.61 | 408 | ★ 1.0 | 95 | BULK-9aaea43e |
| 22785 | Bulk Product 2807fc69 | Clothing | $932.42 | 496 | ★ 0.2 | 11 | BULK-512b0f76 |
| 22786 | Bulk Product 686bfd83 | Electronics | $785.97 | 489 | ★ 1.7 | 45 | BULK-86960fd0 |
| 22787 | Bulk Product d6496d14 | Home & Garden | $467.56 | 469 | ★ 2.1 | 36 | BULK-ae30091f |
| 22788 | Bulk Product eb5023aa | Toys & Games | $821.28 | 223 | ★ 0.8 | 38 | BULK-01b8815f |
| 22789 | Bulk Product 98d31e9d | Electronics | $759.96 | 81 | ★ 0.6 | 64 | BULK-fb7b8e5c |
| 22790 | Bulk Product 6e9c5394 | Sports & Outdoors | $151.40 | 284 | ★ 3.3 | 30 | BULK-b2cf7aa9 |
| 22791 | Bulk Product 798e666c | Books | $555.10 | 291 | ★ 1.9 | 28 | BULK-bd8afc2f |
| 22792 | Bulk Product 8ac669e1 | Electronics | $204.40 | 81 | ★ 1.3 | 81 | BULK-fc8b11d4 |
| 22793 | Bulk Product 357454d7 | Home & Garden | $885.52 | 446 | ★ 2.6 | 84 | BULK-e6ff5531 |
| 22794 | Bulk Product 95d3357f | Sports & Outdoors | $292.91 | 154 | ★ 2.2 | 83 | BULK-28ef3811 |
| 22795 | Bulk Product 2ba50fde | Sports & Outdoors | $380.45 | 227 | ★ 3.9 | 61 | BULK-d4962a8b |
| 22796 | Bulk Product ceb61787 | Clothing | $803.39 | 249 | ★ 0.4 | 83 | BULK-e37aad38 |
| 22797 | Bulk Product 4eab2793 | Clothing | $348.66 | 499 | ★ 1.6 | 5 | BULK-aab359a8 |
| 22798 | Bulk Product 6fe9e0e6 | Books | $247.23 | 134 | ★ 2.3 | 76 | BULK-95e91412 |
| 22799 | Bulk Product 6bb18ff6 | Electronics | $225.24 | 72 | ★ 3.9 | 80 | BULK-956a9550 |
| 22800 | Bulk Product b0deec7e | Electronics | $796.30 | 335 | ★ 2.9 | 69 | BULK-b3baa14f |
| 22801 | Bulk Product d04aa0db | Toys & Games | $978.95 | 166 | ★ 3.7 | 86 | BULK-eb313e4b |
| 22802 | Bulk Product 01587062 | Books | $169.23 | 330 | ★ 2.1 | 93 | BULK-b722aa64 |
| 22803 | Bulk Product d3a86e18 | Electronics | $366.29 | 240 | ★ 2.0 | 31 | BULK-ff5736eb |
| 22804 | Bulk Product d8edb2b2 | Sports & Outdoors | $304.82 | 410 | ★ 1.4 | 80 | BULK-ff127a3d |
| 22805 | Bulk Product b86aafcf | Toys & Games | $57.65 | 446 | ★ 3.9 | 57 | BULK-be299165 |
| 22806 | Bulk Product f0d19dc3 | Books | $575.61 | 209 | ★ 4.2 | 50 | BULK-d58ca801 |
| 22807 | Bulk Product 58486435 | Books | $255.78 | 56 | ★ 2.7 | 94 | BULK-7dc4a026 |
| 22808 | Bulk Product 7d2b4379 | Home & Garden | $304.48 | 91 | ★ 0.9 | 69 | BULK-391f83fc |
| 22809 | Bulk Product ce564213 | Toys & Games | $646.39 | 56 | ★ 4.3 | 9 | BULK-0310fbc5 |
// 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
};
}