Fordelene av LINQ

Fordelene av LINQ


Hvis du arbeider med mange datakilder i Visual Studio-programmer må du lære om fordelene med Språk-Integrated Query. LINQ ble introdusert i Visual Studio 2008 for å gi programmerere en ny måte å søke informasjon fra ulike datakilder. LINQ tilbyr kraftige søkene evner til C # og Visual Basic. LINQ gir et sett med funksjoner som ikke bare lar deg søke fra relasjonsdatabaser som SQL Server, men også fra objekter i minnet eller filer.

Historie

Spørringer er kjent for å programmerere som enkle strenger definert i dataprogrammer for å hente data fra ulike datakilder. Et problem med denne tradisjonelle tilnærmingen er at disse strengene ikke er type kontrolleres under kompilering, og du kan gå glipp av feil. En fordel med LINQ er at du kan fange opp disse feil under kompilering uten å måtte vente til programmet utfører. I tillegg, med LINQ du ikke trenger å lære forskjellige spørrespråk for hver datakilde.

spørring data

En stor fordel i LINQ er at en datakilde kan være alt fra en streng, fil, database, array eller andre datakilder. Den første delen av et LINQ spørringen er datakilden. Når du har lagt inn data i en queryable variabel, så kan du bruke LINQ til å spørre det. Den andre delen er den spørringen som angir informasjon å hente fra datakilden. En annen fordel fremfor den tradisjonelle spørre tilnærmingen er spørringen kjøres av en LINQ spørring. Spørringen kjøres brukes til å iterere over spørringen variabel ved hjelp av en "foreach" statement i C #. Denne sløyfen brukes for å hente resultatene fra spørringen.

Query Operations

Spørring operasjoner er mye lettere å kjøre i LINQ over den tradisjonelle databasespørringer ved å være i stand til å få tilgang til tabellfeltnavn enkelt. Filtrering benyttes til å filtrere informasjonen og er en av de mest vanlige operasjoner som utføres i en LINQ spørring. Det følgende er et eksempel på et LINQ spørring ved hjelp filtrering i C #:

Var queryLondonCustomers = fra cust inn kunder

where cust.City == "London"
select cust;

Datakilder

Å kunne søke ulike datakilder er en stor fordel i LINQ. LINQ til SQL brukes til å søke relasjonsdataobjekter. Følgende er et eksempel på hvordan å spørre en database ved hjelp av LINQ til SQL:

Northwnd db = new Northwnd (@ "c: \ northwnd.mdf");
IQueryable <Kunde> custQuery =

from cust in db.Customers
where cust.City == &quot;London&quot;
select cust;

Bruk LINQ til XML hvis du trenger å spørre en XML-objekt. Følgende C # -kode viser et annet eksempel på hvor lett det er å spørre et XML-dokument:

XDocument srcTree = ny XDocument (

new XComment(&quot;This is a comment&quot;),
new XElement(&quot;Root&quot;,
new XElement(&quot;Child1&quot;, &quot;data1&quot;),
new XElement(&quot;Child2&quot;, &quot;data2&quot;),
new XElement(&quot;Child3&quot;, &quot;data3&quot;),
new XElement(&quot;Child2&quot;, &quot;data4&quot;),
new XElement(&quot;Info5&quot;, &quot;info5&quot;),
new XElement(&quot;Info6&quot;, &quot;info6&quot;),
new XElement(&quot;Info7&quot;, &quot;info7&quot;),
new XElement(&quot;Info8&quot;, &quot;info8&quot;)
)

);

XDocument doc = ny XDocument (

new XComment(&quot;This is a comment&quot;),
new XElement(&quot;Root&quot;,
from el in srcTree.Element(&quot;Root&quot;).Elements()
where ((string)el).StartsWith(&quot;data&quot;)
select el
)

);
Console.WriteLine (doc);