Aggregation
Aggregate, Average, Count, LongCount, Max, Min, Sum
Conversion
AsEnumerable, Cast, OfType, ToArray, ToDictionary, ToList, ToLookup
Element
ElementAt, ElementAtOrDefault, First, FirstOrDefault, Last, LastOrDefault, Single, SingleOrDefault
ElementAt
ElementAtOrDefault
First (simple)
First (conditional)
FirstOrDefault
Last
LastOrDefault (simple)
LastOrDefault (conditional)
Single
SingleOrDefault
Generation
DefaultIfEmpty, Empty, Range, Repeat
Grouping
GroupBy
Join
GroupJoin, Join
Ordering
OrderBy, OrderByDescending, Reverse, ThenBy, ThenByDescending
OrderBy (simple - numbers)
OrderBy (simple - dates)
OrderBy (simple - objects)
OrderByDescending
Reverse
ThenBy
ThenByDescending
Other
Concat, SequenceEqual, Zip
Partitioning
Skip, SkipWhile, Take, TakeWhile
Projection
Select, SelectMany
Quantifiers
All, Any, Contains
Restriction
Where
Set
Distinct, Except, Intersect, Union
Close
Where: Filters elements from a collection to satisfy a specified condition.
Where: Filters elements from a collection to satisfy a specified condition. |
Where: Filters elements from a collection to satisfy a specified condition. |
This Lambda Expression sample finds all persons who are 30 years or older. |
This Lambda Expression sample finds all persons who are 30 years or older. |
static void Sample_Where_Linq_Objects() { Person[] persons = { new Person { Name = "Mike", Age = 25 }, new Person { Name = "Joe", Age = 43 }, new Person { Name = "Nadia", Age = 31 } }; var result = from p in persons where p.Age >= 30 select p; Debug.WriteLine("Finding persons who are 30 years old or older:"); foreach (Person person in result) Debug.WriteLine(String.Format("{0}: {1} years old", person.Name, person.Age)); }Output:
Finding persons who are 30 years old or older: Joe: 43 years old Nadia: 31 years old
Private Class Person Public Property Name() As String Public Property Age() As Integer End Class Private Shared Sub Sample_Where_Linq_Objects() Dim persons As Person() = { New Person() With {.Name = "Mike", .Age = 25}, New Person() With {.Name = "Joe", .Age = 43}, New Person() With {.Name = "Nadia", .Age = 31}} Dim result = From p In persons Where p.Age >= 30 Debug.WriteLine("Finding persons who are 30 years old or older:") For Each person As Person In result Debug.WriteLine([String].Format("{0}: {1} years old", person.Name, person.Age)) Next End SubOutput:
Finding persons who are 30 years old or older: Joe: 43 years old Nadia: 31 years old
type Person(name, age) = member val Name = name member val Age = age let Sample_Where_Linq_Objects() = let persons = [| new Person("Mike", 25); new Person("Joe", 43); new Person("Nadia", 31) |] let result = query { for p in persons do where (p.Age >= 30) } Debug.WriteLine(sprintf "Finding persons who are 30 years old or older:") for person in result do Debug.WriteLine(sprintf "%s: %d years old" person.Name person.Age)Output:
Finding persons who are 30 years old or older: Joe: 43 years old Nadia: 31 years old
class Person { public string Name { get; set; } public int Age { get; set; } } static void Sample_Where_Lambda_Objects() { Person[] persons = { new Person { Name = "Mike", Age = 25 }, new Person { Name = "Joe", Age = 43 }, new Person { Name = "Nadia", Age = 31 } }; var result = persons.Where(p => p.Age >= 30); Debug.WriteLine("Finding persons who are 30 years old or older:"); foreach (Person person in result) Debug.WriteLine(String.Format("{0}: {1} years old", person.Name, person.Age)); }Output:
Finding persons who are 30 years old or older: Joe: 43 years old Nadia: 31 years old
Private Class Person Public Property Name() As String Public Property Age() As Integer End Class Private Shared Sub Sample_Where_Lambda_Objects() Dim persons As Person() = { New Person() With {.Name = "Mike", .Age = 25}, New Person() With {.Name = "Joe", .Age = 43}, New Person() With {.Name = "Nadia", .Age = 31}} Dim result = persons.Where(Function(p) p.Age >= 30) Debug.WriteLine("Finding persons who are 30 years old or older:") For Each person As Person In result Debug.WriteLine([String].Format("{0}: {1} years old", person.Name, person.Age)) Next End SubOutput:
Finding persons who are 30 years old or older: Joe: 43 years old Nadia: 31 years old
type Person(name, age) = member val Name = name member val Age = age let Sample_Where_Lambda_Objects() = let persons = [| new Person("Mike", 25); new Person("Joe", 43); new Person("Nadia", 31) |] let result = persons.Where(fun p -> p.Age >= 30) Debug.WriteLine(sprintf "Finding persons who are 30 years old or older:") for person in result do Debug.WriteLine(sprintf "%s: %d years old" person.Name person.Age)Output:
Finding persons who are 30 years old or older: Joe: 43 years old Nadia: 31 years old