LINQ Query Operators are a set of additional methods that construct a query pattern.
These operators provide a variety of query features as building blocks for LINQ query expressions, such as filtering, sorting, projection, aggregate, and so on.
Based on their capabilities, LINQ query operators can be divided into the following categories:
1. Sorting Operators: Sorting lets you order the items of a sequence based on one or more properties.
Examples
Operator |
Particulars |
C# Query Expression Syntax |
VB Query Expression Syntax |
OrderBy |
Values are sorted ascending by the operator |
OrderBy |
Order By |
OrderByDescending |
Values are sorted in descending order using the operator |
orderby ... descending |
Order By ... Descending |
ThenBy |
Sorts items in ascending order as a supplemental sort |
orderby …, … |
Order By …, … |
ThenByDescending |
Secondary sorting in descending order is performed |
orderby …, … descending |
Order By …, … Descending |
Reverse |
Reverses the order in which the pieces in a collection are shown |
Not Applicable |
Not Applicable |
To sort the data, all of these sorting operators are used. The REVERSE operator, on the other hand, flips the objects in the collection. Rest operators are used to sorting data in the same way as SQL's Order by clause is used. These sorting operators are comparable to SQL operators, with the exception that we're utilising LINQ operators.
2. Projection Operations: Projection is the process of transforming an object into a new form that only has certain qualities.
Examples:
Operator |
Particulars |
C# Query Expression Syntax |
VB Query Expression Syntax |
Select |
Based on a transform function, the operator projects values. |
Select |
Select |
SelectMany |
The operator flattens and projects the series of values based on a transform function into a single sequence. |
Use multiple from clauses |
Use multiple from clauses |
3. Concatenation: Concatenates two sequences and is identical to the Union operator in terms of operation, except that it does not delete duplicates.
Examples:
Operator |
Particulars |
C# Query Expression Syntax |
VB Query Expression Syntax |
Concat |
Two sequences are combined to make a single sequence |
Not Applicable |
Not Applicable |
The Concat procedure or operator in LINQ is used to concatenate or append two collection elements into a single collection, although it does not delete duplicates.
4. Partition Operators: Split input data into two portions without changing the elements and then return one of several sections.
Examples:
Operator |
Particulars |
C# Query Expression Syntax |
VB Query Expression Syntax |
Skip |
Returns the leftover elements after skipping a specified number of entries in a sequence |
Not Applicable |
Skip |
Take |
Take a certain amount of components from succession and ignore the rest |
Not Applicable |
Take |
SkipWhile |
Similar to Skip, except that the amount of elements to skip is determined by a Boolean condition |
Not Applicable |
Skip While |
TakeWhile |
The only difference is that the amount of components to take is determined by a Boolean condition. |
Not Applicable |
Take While |
You can break a category of items into two halves and deliver one part of the list using these operators.
Set Operations: The set operations include four operators, each of which results based on a different set of criteria.
Examples:
Operator |
Particulars |
C# Query Expression Syntax |
VB Query Expression Syntax |
Intersect |
Returns the set of values that were discovered to be the same in two different collections |
Not Applicable |
Not Applicable |
Distinct |
Results in a list of unique values from a collection by filtering duplicate data if any |
Not Applicable |
Distinct |
Except |
Compares the two collections' values and returns the ones through one collection that aren't in the other |
Not Applicable |
Not Applicable |
Union |
Combines the material of two separate collections into a single collection, with no duplicates |
Not Applicable |
Not Applicable |
All of these set operators will execute different operations, such as deleting redundant elements from collections, combining all of the collections' elements, or leaving some facets from the collection, depending on our needs.
6. Element Operators: All of the other eight common query component operators, except for DefaultIfEmpty, retrieve a single component from a collection.