Jugando con LinQ

8
Jugando con LinQ Un vistazo al uso de consultas, operadores y delegados para facilitar el uso de colecciones de datos.

Transcript of Jugando con LinQ

Page 1: Jugando con LinQ

Jugando con LinQ

Un vistazo al uso de consultas, operadores y delegados para facilitar el uso de colecciones de

datos.

Page 2: Jugando con LinQ

¿Qué es LinQ?

LinQ => Language Integrated Query

Es un componente que forma parte del framework .Net

Fue presentado como una de las principales características de la versión 3.5 de .Net

Fue creado como parte del proyecto de investigación Cω (C Omega) por parte del equipo de WebData de Sql Server y el equipo de Microsoft Research

LinQ Query Sintax es muy similar a las consultas Sql.

Page 3: Jugando con LinQ

¿Por qué usar LinQ?

Las consultas LinQ son fáciles de entender y cambian poco entre diferentes lenguajes.

Los tipos de datos, objetos y nombres de variables son validados en tiempo de compilación

Hay una gran cantidad de operadores que pueden utilizarse para crear consultas

Posee una arquitectura abierta y extensible

Funciona sobre varios orígenes de datos

Page 4: Jugando con LinQ
Page 5: Jugando con LinQ

¿Qué es una función Lambda?

Es una función anónima que puede contener expresiones e instrucciones.

No necesitan un identificador dado que se declaran “in situ”, justo cuando van a utilizarse; convirtiendo al destinatario de esta función a actuar como delegado o puntero hacia la misma.

Page 6: Jugando con LinQ

Funciones lambda

Page 7: Jugando con LinQ

Sintaxis

Page 8: Jugando con LinQ

Query Operator

LinQ nos brinda la capacidad de crear nuevos operadores cuando los que tenemos a nuestra disposición no satisfacen nuestras necesidades.

Pueden ser:

Single Element: devuelven solo un element de la secuencia (First, Last, etc)

Sequence: devuelven una secuencia de elementos (where)

Aggregate: devuelven el resultado de una operación (Count, Min, etc)

Grouping: devuelven grupos de elements (GroupBy, GroupJoin)