Get item count of a list<> using Linq

76,269

Solution 1

 var numSpecialBooks = StoreDisplayTypeList.Count(n => n.DisplayType == "Special Book");

This uses an overload of Enumerable.Count that takes aFunc<TSource, bool>predicate to filter the sequence.

Solution 2

Try this:

int specialBookCount = (from n in StoreDisplayTypeList 
                        where n.DisplayType=="Special Book" 
                        select n).Count()

But if you need data as well, you might want to operate with IEnumerable. So, you can use your query and access Count() extension method whenever you want.

var specialBook = from n in StoreDisplayTypeList 
                  where n.DisplayType=="Special Book" 
                  select n;
int num = specialBook.Count();

Solution 3

Just surround your query like this: (from ... select n).Count().

Share:
76,269

Related videos on Youtube

Geeth
Author by

Geeth

Updated on July 09, 2022

Comments

  • Geeth
    Geeth almost 2 years

    I want to query a List<> and find out how MANY items match the selection criteria. using LINQ and c# /.net 3.5. How would I modify the query to return an int count.

    var specialBook = from n in StoreDisplayTypeList 
                      where n.DisplayType=="Special Book" 
                      select n;