Doing paging on Sql server end is ever demanding stuff. Making things simple, here is a little snippet that might help all

SELECT [t1].*
FROM (
SELECT ROW_NUMBER() OVER (
ORDER BY [t0].) AS [ROW_NUMBER], [t0].*
FROM [dbo].[] AS [t0] ) AS [t1] WHERE [t1].[ROW_NUMBER] BETWEEN AND
ORDER BY [t1].[ROW_NUMBER]