Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // OrtizOL - xCSw - http://ortizol.blogspot.com
- using System;
- using System.Collections.Generic;
- using System.Linq;
- namespace Recetas.CSharp.R0525
- {
- internal class Fruta
- {
- public Fruta(string nombre, string color)
- {
- Nombre = nombre;
- Color = color;
- }
- public string Nombre
- {
- get;
- set;
- }
- public string Color
- {
- get;
- set;
- }
- }
- internal class FrutaLinq
- {
- public static void Main()
- {
- // Creación de la colección con objetos Fruta:
- List<Fruta> frutas = new List<Fruta>(){
- new Fruta("pera", "verde"),
- new Fruta("mora", "rojo"),
- new Fruta("cereza", "rojo"),
- new Fruta("mango", "amarillo"),
- new Fruta("banano", "amarillo"),
- new Fruta("naranja", "naranaja"),
- new Fruta("tomate", "rojo"),
- new Fruta("melón", "amarillo"),
- new Fruta("manzana", "verde")
- };
- // Seleccionamos los nombres de las frutas que no son rojas, y
- // que su primera letra es distinta de `p`:
- IEnumerable<string> resultado = from fruta in frutas where fruta.Color != "rojo"
- && fruta.Nombre[0] != 'p' orderby fruta.Nombre
- select fruta.Nombre;
- // Visualización de resultados:
- Console.WriteLine("\nConsulta usando expresiones estándar:");
- foreach(string nombre in resultado)
- {
- Console.WriteLine("\tResultado: {0}.", nombre);
- }
- // Ahora usamos expresiones lambda para la misma consulta:
- resultado = frutas.Where(fruta => fruta.Color != "rojo" && fruta.Nombre[0] != 'p').
- OrderBy(fruta => fruta.Nombre).Select(fruta => fruta.Nombre);
- // Visualización de resultados:
- Console.WriteLine("\nConsulta usando expresiones lambda:");
- foreach(string nombre in resultado)
- {
- Console.WriteLine("\tResultado: {0}.", nombre);
- }
- Console.WriteLine();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement