Razor
Razor

Reputation: 17498

Linq to SQL - Returning two values with one query

Is it possible to return a single value and an enumerable collection using LINQ to SQL?

The problem is, I'm trying to do paging across a large recordset. I only want to return 10 rows at a time so I'm using .Skip(20).Take(10) approach.

However I need to know the total number of records so I can show an appropriate page x of y.

Trying to avoid two separate queries.

Thanks

Upvotes: 2

Views: 388

Answers (2)

Nick Allen
Nick Allen

Reputation: 12220

I came across this exact same issue and ended up with

var q = from i in tableName select i;

int total = q.Count();

foreach(var obj in q.Skip(20).Take(10))
{
    ...
}

It really wasn't a problem at all

Upvotes: 1

Klaus Byskov Pedersen
Klaus Byskov Pedersen

Reputation: 120937

Don't be afraid of queries. Do both.

Upvotes: 4

Related Questions