Unam

Páginas: 63 (15737 palabras) Publicado: 20 de septiembre de 2012
Operadores de LINQ
OPERADORES DE LINQ 1
1. FILTERING (FILTRADO) 6
1.1 OFTYPE 6
1.2 WHERE 7
2. PROJECTION (PROYECCIÓN) 9
2.1 SELECT 9
3. PARTITIONING (PARTICIONADO) 17
3.1 SKIP 17
3.2 SKIPWHILE 18
3.4 TAKEWHILE 21
4. JOIN (UNIÓN) 23
4.1 GROUPJOIN 23
5. CONCATENATION (CONCATENACIÓN) 32
5.1 CONCAT 32
6. ORDERING (ORDENACIÓN) 33
6.1 ORDERBY 33
6.2 ORDERBYDESCENDING 35
6.3 REVERSE 386.4 THENBY 39
6.5 THENBYDESCENDING 42
7. GROUPING (AGRUPACIÓN) 45
Operadores de LINQ 4
7.1 GROUPBY 45
7.2 TOLOOKUP 55
8. SET (CONJUNTO) 60
8.1 DISTINCT 60
8. SET (CONJUNTO) 62
8.3 INTERSECT 64
8.4 UNION 67
9. CONVERSION (CONVERSIÓN) 70
9.1 ASENUMERABLE 70
9.2 ASQUERYABLE 71
9.3 CAST 72
9.4 TOARRAY 73
9.5 TODICTIONARY 74
9.6 TOLIST 78
10. EQUALITY (IGUALDAD) 80
10.1SEQUENCEEQUAL 80
11. ELEMENT (ELEMENTO) 82
11.1 ELEMENTAT 82
11.2 ELEMENTATORDEFAULT 82
11.3 FIRST 83
11.4 FIRSTORDEFAULT 84
11.5 LAST 85
11.6 LASTORDEFAULT 87
11.7 SINGLE 88
11.8 SINGLEORDEFAULT 89
5 Operadores de LINQ
12. GENERATION (GENERACIÓN) 91
12.1 DEFAULTIFEMPTY 91
12.2 EMPTY 92
12.3 RANGE 93
12.4 REPEAT 94
13. QUANTIFIER (CUANTIFICADORES) 95
13.1 ALL 95
13.2 ANY 96
13.3 CONTAINS97
14. AGGREGATION (AGREGACIÓN) 100
14.1 AGGREGATE 100
14.2 AVERAGE 102
14.3 COUNT 104
14.4 LONGCOUNT 105
14.5 MAX 106
14.6 MIN 108
14.7 SUM 109
1. Filtering (Filtrado) 6
1. Filtering (Filtrado)
1.1 OfType
El operador OfType nos permite filtrar una secuencia dado un tipo.
1.1.1 Código necesario para los ejemplos
Lista de objetos al azar:
object[] objetos = { "LINQ", 1, 23.4F,"Perro",
new object(), "Casa" };
1.1.2 OfType
public static IEnumerable OfType(
this IEnumerable source
)
Le especificamos el tipo que queremos filtrar y nos devuelve una
enumeración de dicho tipo.
Por ejemplo, si queremos solo los elementos del tipo string usamos el
operador OfType para filtrar esa secuencia:
IEnumerable cadenas = objetos.OfType();
Si imprimimos el resultado, la salida sería:LINQ
Perro
Casa
7 Operadores de LINQ
1.2 Where
El operador Where nos permite filtrar una secuencia, pero a diferencia
de OfType, el operador Where es mucho más flexible puesto que admite
como parámetro un delegado.
1.2.1 Código necesario para los ejemplos
Lista de títulos (imaginarios) de libros:
var libros = new List
{
"Programando en C#",
"LINQ para torpes",
"WPF para todos","Empezando con LINQ",
"LINQ Avanzado"
};
1.2.2 Where estándar
public static IEnumerable Where(
this IEnumerable source,
Func predicate
)
En este caso Where acepta un delegado el cual recibe como parámetro
un elemento de la secuencia y nos devuelve un bool que nos indica si ese
elemento se filtra o no. El operador devuelve una enumeración con los
elementos filtrados.
Queremos una nuevalista de libros donde sólo estén los que sean de
LINQ, para ello usamos Where.
IEnumerable librosLINQ = libros.Where(
libro => libro.Contains("LINQ"));
Además, el operador Where se puede convertir a la sintaxis de un query
expression:
IEnumerable librosLINQ = from libro in libros
where libro.Contains("LINQ")
select libro;
1. Filtering (Filtrado) 8
En ambos casos, el resultado de imprimirlosería:
LINQ para torpes
Empezando con LINQ
LINQ Avanzado
1.2.3 Where + índice
public static IEnumerable Where(
this IEnumerable source,
Func predicate
)
En este caso, el delegado acepta también un int el cual representa la
posición de cada elemento en la secuencia que estamos filtrando.
Así que si por ejemplo queremos aquellos libros de LINQ que estén
dentro de las 3 primerasposiciones de la secuencia, podemos usar el
siguiente fragmento:
IEnumerable librosLINQ = libros.Where((libro, index) =>
libro.Contains("LINQ") && index < 3);
Esto imprimiría:
LINQ para Torpes
La versión de Where que acepta también el índice, no puede ser
convertida a la sintaxis de los query expressions.
9 Operadores de LINQ
2. Projection (Proyección)
2.1 Select
El operador Select nos...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • unam
  • Unam
  • Unam
  • Unam
  • Unam
  • UNAM
  • Unam
  • Unam

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS