Quantifier operations in LINQ (C#)
Quantifier operations return a Boolean value that indicates whether some or all of the elements in a sequence satisfy a condition.
The following illustration depicts two different quantifier operations on two different source sequences. The first operation asks if any of the elements are the character 'A'. The second operation asks if all the elements are the character 'A'. Both methods return true
in this example.
The standard query operator methods that perform quantifier operations are listed in the following section.
Methods
Method Name | Description | C# Query Expression Syntax | More Information |
---|---|---|---|
All | Determines whether all the elements in a sequence satisfy a condition. | Not applicable. | Enumerable.All Queryable.All |
Any | Determines whether any elements in a sequence satisfy a condition. | Not applicable. | Enumerable.Any Queryable.Any |
Contains | Determines whether a sequence contains a specified element. | Not applicable. | Enumerable.Contains Queryable.Contains |
Query Expression Syntax Examples
All
The following example uses the All
to check that all strings are of a specific length.
class Market
{
public string Name { get; set; }
public string[] Items { get; set; }
}
public static void Example()
{
List<Market> markets = new List<Market>
{
new Market { Name = "Emily's", Items = new string[] { "kiwi", "cheery", "banana" } },
new Market { Name = "Kim's", Items = new string[] { "melon", "mango", "olive" } },
new Market { Name = "Adam's", Items = new string[] { "kiwi", "apple", "orange" } },
};
// Determine which market have all fruit names length equal to 5
IEnumerable<string> names = from market in markets
where market.Items.All(item => item.Length == 5)
select market.Name;
foreach (string name in names)
{
Console.WriteLine($"{name} market");
}
// This code produces the following output:
//
// Kim's market
}
Any
The following example uses the Any
to check that any strings are start with 'o'.
class Market
{
public string Name { get; set; }
public string[] Items { get; set; }
}
public static void Example()
{
List<Market> markets = new List<Market>
{
new Market { Name = "Emily's", Items = new string[] { "kiwi", "cheery", "banana" } },
new Market { Name = "Kim's", Items = new string[] { "melon", "mango", "olive" } },
new Market { Name = "Adam's", Items = new string[] { "kiwi", "apple", "orange" } },
};
// Determine which market have any fruit names start with 'o'
IEnumerable<string> names = from market in markets
where market.Items.Any(item => item.StartsWith("o"))
select market.Name;
foreach (string name in names)
{
Console.WriteLine($"{name} market");
}
// This code produces the following output:
//
// Kim's market
// Adam's market
}
Contains
The following example uses the Contains
to check an array have a specific element.
class Market
{
public string Name { get; set; }
public string[] Items { get; set; }
}
public static void Example()
{
List<Market> markets = new List<Market>
{
new Market { Name = "Emily's", Items = new string[] { "kiwi", "cheery", "banana" } },
new Market { Name = "Kim's", Items = new string[] { "melon", "mango", "olive" } },
new Market { Name = "Adam's", Items = new string[] { "kiwi", "apple", "orange" } },
};
// Determine which market contains fruit names equal 'kiwi'
IEnumerable<string> names = from market in markets
where market.Items.Contains("kiwi")
select market.Name;
foreach (string name in names)
{
Console.WriteLine($"{name} market");
}
// This code produces the following output:
//
// Emily's market
// Adam's market
}
See also
Feedback
Submit and view feedback for