Scio Talks - Jugando con LinQ

Post on 05-Jul-2015

121 views 3 download

description

Juan Miguel Alcalá nos comparte en su charla los fundamentos de LinQ, algo de su antecedentes y ejemplos de sus manejo.

Transcript of Scio Talks - Jugando con LinQ

Jugando con LinQUn vistazo al uso de consultas, operadores y delegados para facilitar el

uso de colecciones de datos.

¿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.

¿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

¿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.

Funciones lambda

Sintaxis

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)