LINQ to Objects
Il termine "LINQ to Objects" si riferisce all'utilizzo diretto delle query LINQ con qualsiasi insieme IEnumerable o IEnumerable<T>, senza l'utilizzo di un provider LINQ intermedio o di un'API come LINQ to SQL o LINQ to XML. È possibile utilizzare LINQ per eseguire una query su qualsiasi insieme enumerabile come List<T>, Array o Dictionary<TKey, TValue>. L'insieme può essere definito dall'utente o può essere restituito da un'API di .NET Framework.
Come concetto di base, LINQ to Objects rappresenta un nuovo approccio agli insiemi. In passato, era necessario scrivere cicli foreach complessi che specificavano come recuperare i dati da un insieme. Con LINQ è possibile scrivere codice dichiarativo che descriva i dati da recuperare.
Inoltre, le query LINQ offrono tre vantaggi principali rispetto ai cicli foreach tradizionali:
Sono più brevi e leggibili, soprattutto quando si filtrano più condizioni.
Forniscono funzioni potenti di filtro, ordinamento e raggruppamento con un codice dell'applicazione minimo.
Possono essere trasferiti in altre origini dati con modifiche minime o nulle.
In generale, più è complessa l'operazione da eseguire sui dati, maggiore sarà il vantaggio che si potrà trarre dall'utilizzo di LINQ anziché delle tecniche di iterazione tradizionali.
In questa sezione viene illustrato LINQ con alcuni esempi scelti. Tali informazioni non devono essere ritenute esaustive.
Argomenti della sezione
Procedura: eseguire una query su un ArrayList con LINQ
Viene illustrato come eseguire una query su un oggetto ArrayList in Visual Basic e C#.LINQ e stringhe
Viene illustrato come utilizzare LINQ per eseguire una query e trasformare stringhe e insiemi di stringhe. Vengono inoltre inclusi collegamenti ad argomenti che illustrano questi principi.Directory di file e LINQ
Viene illustrato come LINQ può essere utilizzato per interagire con i file system. Vengono inoltre inclusi collegamenti ad argomenti che illustrano questi concetti.LINQ e Reflection
Collegamenti a un esempio che illustra come LINQ utilizza la reflection.LINQ (Language-Integrated Query)
Vengono forniti collegamenti ad argomenti che descrivono LINQ e forniscono esempi di codice che eseguono query.Procedura: aggiungere metodi personalizzati per le query LINQ
Viene illustrato come estendere il set di metodi che è possibile utilizzare per le query LINQ aggiungendo metodi di estensione all'interfaccia IEnumerable<T>.