¿Qué es una consulta integrada de idioma?

La consulta integrada del idioma (LINQ) proporciona la capacidad de integrar sin problemas de la sintaxis de consulta declarativa en idiomas imperativos, principalmente C# y VB.NET. El desarrollo de LINQ resolvió los problemas que los desarrolladores que trabajan en entornos orientados a objetos se encuentran al realizar consultas. Se introdujo como parte del Microsoft® .NET Framework versión 3.5 en noviembre de 2007, y en Visual Studio® Codename "Orcas".

Antes de la creación de la consulta integrada del lenguaje, los lenguajes .NET no tenían una forma nativa de consultar las bases de datos relacionales o documentos XML. Los desarrolladores que escriben en estos idiomas tuvieron que integrar SQL o XQuery respectivamente como cadenas, y mapear manualmente los datos que resultan en objetos .NET. Las cadenas de consulta incrustadas y las asignaciones no podrían ser validadas por los compiladores de .NET, lo que permitió que los posibles errores se descubrieran en el tiempo de ejecución.

otro problema que los desarrolladores se enfrentaron antes de la consulta integrada del lenguaje era que los lenguajes de .NET solo tenían sintaxis orientadas a la consulta de .Net.Jects. Por lo general, el desarrollador iteraría sobre una colección de fuente completa, construyendo nuevas colecciones de resultados basadas en los criterios de búsqueda. El desarrollador también podría transformar los datos mientras construye las colecciones de resultados. Este enfoque fue engorroso; Una consulta selecta simple escrita en C# o VB requeriría al menos cinco líneas de código, mientras que la misma consulta requeriría una línea de código en un lenguaje de consulta.

Los desafíos de consultar dentro de un entorno orientado a objetos le dieron a Microsoft el ímpetu para crear LINQ. LINQ proporciona una sintaxis de consulta que recuerda a SQL para usarse en línea con C# o VB, completa con verificación de tipo estático. Al consultar las colecciones .NET, en lugar de usar bucles anidados, los desarrolladores pueden usar la sintaxis LINQ para seleccionar elementos y transformar datos. Entre otras ventajas, esto da como resultado menos líneas de código en comparación con la sintaxis puramente orientada a objetos.

Al acceder a D externoLas fuentes de ATA, LINQ y componentes de soporte eliminan la necesidad de lenguajes de consulta integrados y asignaciones de datos dentro de un lenguaje .NET en sí. Para realizar la asignación de datos, LINQ depende de los componentes llamados proveedores LINQ. LINQ-to-Objects es el proveedor de acciones que permite a LINQ acceder a las colecciones .NET. Del mismo modo, hay proveedores para acceder a bases de datos relacionales y documentos XML. La mayoría de estos proveedores son componentes de terceros no incluidos en el marco .NET. Independientemente del proveedor utilizado, todas las consultas usan la misma sintaxis de Linq.

Entre la sintaxis de consulta integrada del lenguaje y los proveedores hay una biblioteca de operadores de consultas agregados al marco .NET como parte de las instalaciones LINQ. Estos operadores realizan tareas tales como filtrado, ordenamiento, operaciones de teoría establecidas y agregación. Como estos operadores son parte del marco .NET, también se pueden usar sin LINQ si el desarrollador así lo elige.

OTROS IDIOMAS