Search code examples
linqlinq-to-sqllinq-to-entities

LINQ to SQL . how to select all record using .take()


var result=(from refridgerators in context.A                                               
                                     group refridgerators by new { refridgerators.Id, refridgerators.Name } into gr
                                     select new DAO<String>
                                     {
                                         Key = gr.Key.Name,
                                         Count = gr.Count()
                                     }).OrderByDescending(k => k.Count).Take(numberOfRecords).ToList();

This is my linq to sql query this is working perfectly fine.

this shows top 5 records (sorted by their count) if i pass numberOfRecords =5.

now my problem is i don`t want to modify query. so what should i do in above query to show all records. This is in relation with my requirement i want to use same query to show all refridgerators and Top 5 , top 10 refridgerators.

I am not sure if it is possible using LINQ. but i guess there must be something related to this.


Solution

  • As the right solution has already been posted by Tim, still I want your attention to the simpler solution, if suits to your requirement. Add one more if condition at the top of this query.

    if(allRecordRequired)
    {
      numberOfRecords = 2000000;
    }
    

    Leave your query as it is.