To get a page from a database I have to execute something like this:
var cs = ( from x in base.EntityDataContext.Corporates
select x ).Skip( 10 ).Take( 10 );
This will skip the first 10 rows and will select the next 10.
How can I know how many rows would result because of the query without pagination? I do not want to run another query to get the count.
To get the total number of records before skip/take you have to run a separate query. Getting the actual number returned would use Count(), but wouldn't result in another query if the original query was materialized.
var q = from x in base.EntityDataContext.Corporates
select x;
var total = q.Count();
var cs = q.Skip(10).Take(10);
var numberOnSelectedPage = cs.Count();