Aua... Bist du dir da sicher? Sowas kann doch nicht sein, oder? Ich will doch nicht jedes mal das komplette Resultset haben. Ist doch auch übelst Aufwand für den Server.
Was würde "Limit" denn anderes machen als nach X rows aufzuhören?
Da du da eine Sortierung drin hast, muss er sich sowieso das gesamte Set anschauen.
Du hast doch da einen DataReader, breche also selbst nach X Rows ab.
Einfach mal kurz nachdenken, was du da mit deinem
SQL für eine Anforderung n den Index Provider stellst. Der kann doch nicht zaubern.
Und wenn er nicht zaubern kann, warum sollte ein Limit/Top signifikant schneller sein, als den Reader frühzeitig abzubrechen?