I vantaggi di LINQ

July 15

I vantaggi di LINQ


Se si lavora con sorgenti di molti dati nei programmi di Visual Studio, allora avete bisogno di conoscere i vantaggi di Query Language-Integrated. LINQ è stato introdotto in Visual Studio 2008 per dare ai programmatori un nuovo modo di interrogare i dati provenienti da diverse fonti di dati. LINQ offre potenti funzionalità di interrogazione per C # e Visual Basic. LINQ offre un insieme di caratteristiche che non solo consentono di eseguire query da database relazionali come SQL Server, ma anche da oggetti in memoria o file.

Storia

Le query sono noti per i programmatori come semplici stringhe definite per i programmi informatici per recuperare i dati provenienti da diverse fonti di dati. Un problema con questo approccio tradizionale è che quei stringhe non sono di tipo controllati durante la fase di compilazione e si può perdere gli errori. Un vantaggio con LINQ è che è possibile catturare questi errori durante la fase di compilazione, senza dover attendere che il programma esegue. Inoltre, con LINQ non devi imparare lingue diverse query per ogni fonte di dati.

Interrogazione dei dati

Uno dei principali vantaggi in LINQ è che una fonte di dati può essere qualsiasi cosa, da una stringa, un file, database, array o altre fonti di dati. La prima parte di una query LINQ è la fonte dei dati. Una volta caricati i dati in una variabile queryable, quindi è possibile utilizzare LINQ per interrogare esso. La seconda parte è la query che specifica le informazioni da recuperare dall'origine dati. Un altro vantaggio rispetto al tradizionale approccio query è l'esecuzione di query di una query LINQ. L'esecuzione di query viene utilizzata per scorrere la variabile query utilizzando una dichiarazione "foreach" in C #. Questo ciclo viene utilizzato per recuperare i risultati della query.

operazioni di query

operazioni di query sono molto più facili da eseguire in LINQ sopra le tradizionali query di database per essere in grado di accedere ai nomi dei campi della tabella facilmente. Il filtraggio è utilizzato per filtrare i dati ed è una delle operazioni più comuni eseguite in una query LINQ. Il seguente è un esempio di una query LINQ utilizzando filtrante in C #:

var = queryLondonCustomers da Cust in clienti

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

Origine dei dati

Essere in grado di interrogare diverse fonti di dati è un grande vantaggio in LINQ. LINQ to SQL viene utilizzato per interrogare gli oggetti di dati relazionali. Quanto segue è un esempio su come interrogare un database utilizzando LINQ to SQL:

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

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

Utilizzare LINQ to XML se è necessario interrogare un oggetto XML. Il seguente codice C # mostra un altro esempio di come sia facile per interrogare un documento XML:

XDocument srcTree = new 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 = new 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);