Language Integrated Query

Från Rilpedia

Hoppa till: navigering, sök
Wikipedia_letter_w.pngTexten från svenska WikipediaWikipedialogo_12pt.gif
rpsv.header.diskuteraikon2.gif

Language Integrated Query (LINQ, uttalas "link") är en .NET Framework-komponent som tillhandahåller query-funktionalitet för .NET-språk med SQL-liknande syntax.

Många av koncepten testades ursprungligen i det så kallade Cω (C-Omega) projektet på Microsoft Research. LINQ släpptes som en del av .NET Framework 3.5 den 19 november, 2007.

LINQ definierar en mängd operatorer som kan användas för att hantera vektorer, enumererbara klasser, XML, relationella databaser och tredjeparts databaser. Detta kräver dock att datan måste vara inkapslade i objekt vilket hanteras av LINQ.

LINQ består till grunden av ett API bestående av tilläggsmetoder (extension methods) som tillhandahåller de funktioner som behövs för att skicka förfrågningar till objekt som implementerar gränssnittet IQueryable (oftast genom ICollection, i sin tur genom IEnumerable<T>).

Exempel

Linq-to-objects i C#.

/* 
   Ett antal objekt finns i customers (en samligsklass, List<Customer>).
   Filtera listan och ta de objekt vars Lastname börjar på B.
   Sortera resultaten (också efter Lastname) och returera dem
   i variabeln custs (nyckelordet var betyder att kompilatorn identifierar typen).
*/

var custs = from c in customers
                     where c.Lastname.StartsWith("B")
                     orderby c.Lastname
                     select c;


Referenser

Personliga verktyg