Well, I know the answer is old ... but ... in EF mysql you need to go through one order or order in descending order before skipping.
The real solution, not an alternative:
like this:
var yourVar = dbContext.LinkText .Where(x => x.active) .OrderByDescending(x => x.startDate) .Skip(50) .Take(10);
You can use any logic when skipping and do this:
query .OrderByDescending(x => x.startDate) .Skip(page <= 1 ? 0 : (page - 1) * (qty == 0 ? 10 : qty)) .Take(qty == 0 ? 10 : qty);
and then mySQL will get the code:
*...the query...* ORDER BY `Extent1`.`startDate` DESC LIMIT 0,10
source share