Day: 16 noviembre 2013

Introducción a LINQ


LINQ (leído “link”, pese a que mucha gente lo denomina “lin-quiú”) es una biblioteca de la plataforma .NET que proporciona acceso a datos de forma nativa a C# o VB.NET.

Basa su existencia en las denominadas expresiones de consulta, que recuerdan a las sentencias SQL pero extienden su funcionalidad de consulta a otros elementos como listas, arrays, clases enumerables, o documentos XML.

Operadores de consulta

LINQ hace uso de un conjunto de operadores, definidos en el espacio de nombres System.Linq, que permiten realizar consultas sobre cualquier conjunto de objetos enumerables, es decir, IEnumerable<T>. Por ejemplo, imaginemos que tenemos un array (que implementa IEnumerable) como el siguiente:

    string[] juegos = {  "Carcassonne", "Bang", "Jungle Speed", "Los colonos de Catán", "Black stories", "Munchkin", "Zombies" };

    IEnumerable<string> consulta = from j in juegos
                                    where j.StartsWith("J")
                                    orderby j ascending
                                    select j;

    foreach( string elemento in consulta)
        Console.WriteLine(elemento);

Como podemos observar, si disponemos de conocimientos básicos de SQL, la consulta LINQ se parece bastante a una consulta SQL: cláusula select, where, from, orderby… Puede que lo único que altere un poco la paz de los que nunca hayan visto esta tecnología sea el orden en el que se declaran las sentencias.

(más…)