Efficient pagination using OFFSET-FETCH on SQL Server.
| ID | Name | Category | Price | Stock | Rating | Reviews | SKU |
|---|---|---|---|---|---|---|---|
| 23960 | Bulk Product 5ab1f1ef | Electronics | $139.49 | 426 | ★ 4.6 | 89 | BULK-71d1d6db |
| 23961 | Bulk Product 264db5db | Clothing | $20.11 | 195 | ★ 1.3 | 95 | BULK-7beaf9fd |
| 23962 | Bulk Product 9e6efabd | Electronics | $614.54 | 259 | ★ 4.8 | 97 | BULK-7bfc35d5 |
| 23963 | Bulk Product fe5467bb | Home & Garden | $959.72 | 248 | ★ 4.5 | 48 | BULK-86fa1f75 |
| 23964 | Bulk Product e168e185 | Sports & Outdoors | $834.28 | 424 | ★ 3.8 | 90 | BULK-a5b2d3bb |
| 23965 | Bulk Product f1d9a602 | Clothing | $295.73 | 478 | ★ 4.7 | 29 | BULK-826779f2 |
| 23966 | Bulk Product f655bd18 | Sports & Outdoors | $353.22 | 315 | ★ 3.9 | 64 | BULK-e91daafa |
| 23967 | Bulk Product a4aa5efc | Sports & Outdoors | $582.16 | 351 | ★ 4.6 | 65 | BULK-51eac99d |
| 23968 | Bulk Product 90d93753 | Toys & Games | $264.79 | 353 | ★ 2.6 | 64 | BULK-0cdd6e33 |
| 23969 | Bulk Product 7a5297a4 | Electronics | $960.04 | 402 | ★ 0.9 | 39 | BULK-14ed8c90 |
| 23970 | Bulk Product 63104089 | Home & Garden | $696.65 | 366 | ★ 4.4 | 66 | BULK-4efb8593 |
| 23971 | Bulk Product 0b379b36 | Toys & Games | $300.60 | 285 | ★ 1.4 | 47 | BULK-c627a0d3 |
| 23972 | Bulk Product 875288c9 | Electronics | $101.80 | 406 | ★ 3.1 | 43 | BULK-e79af72c |
| 23973 | Bulk Product 68ea479d | Books | $722.19 | 312 | ★ 4.9 | 85 | BULK-6434dfb7 |
| 23974 | Bulk Product 8943205c | Clothing | $818.27 | 65 | ★ 4.8 | 60 | BULK-9f10e59d |
| 23975 | Bulk Product d1c87362 | Sports & Outdoors | $175.78 | 207 | ★ 0.9 | 22 | BULK-8fe590d7 |
| 23976 | Bulk Product dec90429 | Electronics | $767.65 | 384 | ★ 2.9 | 45 | BULK-d7883a61 |
| 23977 | Bulk Product 3e375676 | Books | $578.97 | 188 | ★ 1.4 | 79 | BULK-99096fe4 |
| 23978 | Bulk Product 91073935 | Sports & Outdoors | $226.55 | 164 | ★ 0.5 | 18 | BULK-84b40169 |
| 23979 | Bulk Product b49772a5 | Toys & Games | $27.62 | 16 | ★ 4.3 | 24 | BULK-b4986a3c |
| 23980 | Bulk Product fd92d8a5 | Electronics | $216.57 | 487 | ★ 3.8 | 96 | BULK-267c5540 |
| 23981 | Bulk Product 0ed44583 | Books | $803.99 | 148 | ★ 0.7 | 86 | BULK-71e9da9b |
| 23982 | Bulk Product e89bd564 | Home & Garden | $69.29 | 187 | ★ 4.7 | 95 | BULK-0b671936 |
| 23983 | Bulk Product 1b34636c | Electronics | $496.61 | 157 | ★ 2.9 | 88 | BULK-c1b3ba96 |
| 23984 | Bulk Product 0e4f0668 | Electronics | $420.58 | 476 | ★ 3.2 | 59 | BULK-7aa19426 |
| 23985 | Bulk Product 07d7f77e | Sports & Outdoors | $131.09 | 428 | ★ 4.9 | 82 | BULK-d0c6af80 |
| 23986 | Bulk Product cdea1397 | Toys & Games | $957.83 | 228 | ★ 0.0 | 41 | BULK-d146de19 |
| 23987 | Bulk Product 96a81da3 | Books | $924.90 | 295 | ★ 3.6 | 96 | BULK-82010fde |
| 23988 | Bulk Product 9d156292 | Electronics | $635.27 | 416 | ★ 0.5 | 45 | BULK-6d7f6d10 |
| 23989 | Bulk Product c13f4cdb | Home & Garden | $487.89 | 388 | ★ 1.5 | 91 | BULK-2b1a2874 |
| 23990 | Bulk Product 57a9868d | Electronics | $977.10 | 9 | ★ 2.2 | 81 | BULK-5c39694a |
| 23991 | Bulk Product cc41cb6e | Sports & Outdoors | $527.73 | 234 | ★ 1.8 | 85 | BULK-938db347 |
| 23992 | Bulk Product bc7ce2a9 | Sports & Outdoors | $518.46 | 326 | ★ 2.0 | 14 | BULK-02425181 |
| 23993 | Bulk Product 692e4b01 | Electronics | $825.90 | 477 | ★ 3.5 | 2 | BULK-1641f77d |
| 23994 | Bulk Product 00b65c9c | Electronics | $277.16 | 270 | ★ 2.2 | 9 | BULK-658b3e90 |
| 23995 | Bulk Product db6fad2c | Books | $463.81 | 288 | ★ 0.5 | 64 | BULK-faffb77b |
| 23996 | Bulk Product bd5cdd88 | Books | $325.81 | 183 | ★ 4.3 | 33 | BULK-16aa8b35 |
| 23997 | Bulk Product 2c403acd | Books | $635.84 | 108 | ★ 1.6 | 6 | BULK-2a4399db |
| 23998 | Bulk Product fa8564e6 | Clothing | $688.67 | 149 | ★ 4.8 | 53 | BULK-bcd4e5b2 |
| 23999 | Bulk Product 58ec4788 | Books | $911.26 | 58 | ★ 1.1 | 72 | BULK-8c0fdc8f |
| 24000 | Bulk Product 72fa9451 | Sports & Outdoors | $238.21 | 15 | ★ 3.2 | 61 | BULK-fae4e0fc |
| 24001 | Bulk Product a9e0dcf8 | Sports & Outdoors | $516.00 | 355 | ★ 3.2 | 35 | BULK-611c1201 |
| 24002 | Bulk Product dcdbfc62 | Books | $408.29 | 156 | ★ 4.6 | 77 | BULK-93c6a683 |
| 24003 | Bulk Product 647175bc | Clothing | $161.04 | 260 | ★ 1.8 | 11 | BULK-295b9c9c |
| 24004 | Bulk Product 6b44ba4b | Clothing | $236.99 | 381 | ★ 1.2 | 35 | BULK-efe81aeb |
| 24005 | Bulk Product d123d4b9 | Toys & Games | $307.18 | 437 | ★ 3.2 | 24 | BULK-374adb4d |
| 24006 | Bulk Product 33c78120 | Sports & Outdoors | $308.66 | 485 | ★ 0.1 | 92 | BULK-8a0445ae |
| 24007 | Bulk Product af3a2d57 | Home & Garden | $425.79 | 358 | ★ 2.8 | 42 | BULK-d41a9fad |
| 24008 | Bulk Product 11a78251 | Sports & Outdoors | $86.59 | 374 | ★ 3.6 | 22 | BULK-ce3d8b6c |
| 24009 | Bulk Product 2d18102e | Home & Garden | $909.53 | 147 | ★ 4.9 | 85 | BULK-427b71b8 |
// 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
};
}