Getting Started
The basic units of data in LINQ are sequences
and elements. A sequence is any object that
implements the generic IEnumerable
interface, and an element is each item in the sequence. In the following
example, names is a sequence, and
Tom, Dick, and Harry are elements:
string[] names = { "Tom", "Dick", "Harry" };We call such a sequence a local sequence because it represents a local collection of objects in memory.
A query operator is a method that transforms
a sequence. A typical query operator accepts an input
sequence and emits a transformed output
sequence. In the Enumerable class in System.Linq, there are around 40 query operators, all implemented as static extension
methods, called standard query operators.
Note
LINQ also supports sequences that can be dynamically fed from a
remote data source such as a SQL Server. These sequences additionally implement the
IQueryable<> interface and
are supported through a matching set of standard query operators in
the Queryable class. For more
information, see the upcoming “Interpreted Queries” section.
A query is an expression that transforms
sequences with query operators. The simplest query comprises one input
sequence and one operator. For instance, we can apply the Where operator on a simple array to extract
those whose length is at least four characters as follows:
string[] names = { "Tom", "Dick", "Harry" };
IEnumerable<string> filteredNames =
System.Linq.Enumerable.Where (
names, n => n.Length >= 4); foreach (string n in ...Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access