Skip to content

LINQ (Language Integrated Query)

LINQ provides a unified way to query and manipulate data from different data sources. It introduces a powerful set of features for querying arrays, collections, XML, and databases using a consistent syntax.

Basic LINQ Queries

LINQ offers two syntax styles: query syntax (similar to SQL) and method syntax (using extension methods).

csharp
// Query syntax
var query = from num in numbers
            where num > 5
            orderby num
            select num;

// Method syntax
var result = numbers
    .Where(n => n > 5)
    .OrderBy(n => n)
    .Select(n => n);

Common LINQ Operations

LINQ provides a rich set of operations for working with collections.

csharp
// Filtering
var filtered = numbers.Where(n => n % 2 == 0);

// Ordering
var ordered = names.OrderBy(n => n);
var descending = names.OrderByDescending(n => n);

// Projection
var selected = people.Select(p => p.Name);

// Aggregation
var sum = numbers.Sum();
var avg = numbers.Average();
var count = numbers.Count();