protected void btnSeleccionNumero_Click(object sender, EventArgs e)
        {
            List <PartesMotor> datos = PartesMotor.CrearLista(); //FUENTE DE DATOS
            var descripcion          = (from p in datos
                                        where p.Numero.Equals(5)
                                        select p.Description).SingleOrDefault(); //singlesordefault: tengo claro que hay una sola respuesta.

            if (descripcion != null)
            {
                Response.Write(string.Format("Parte del motor {0}", descripcion));
            }
        }
        protected void btnSeleccionA_Click(object sender, EventArgs e)
        {
            List <PartesMotor> datos = PartesMotor.CrearLista(); //FUENTE DE DATOS
            //consulta clásica
            var partes = from p in datos
                         where p.Description.StartsWith("A")
                         select p;

            //consulta  LAMBDA
            var partesLambda = datos
                               .Where(p => p.Description.StartsWith("A"))
                               .Select(p => p);

            foreach (PartesMotor part in partes)
            {
                Response.Write(string.Format("{0}{1}", part.Numero, part.Description));
                Response.Write("<br>");
            }
        }
        public static List <PartesMotor> CrearLista() //metodo estatico que va a devolver
        {
            List <PartesMotor> listaPartesMotor = new List <PartesMotor>();
            //creo objetos individuales
            PartesMotor p1 = new PartesMotor();

            p1.Numero      = 1;
            p1.Description = "Correa de distribución";
            listaPartesMotor.Add(p1);

            PartesMotor p2 = new PartesMotor();

            p2.Numero      = 2;
            p2.Description = "Arbol de levas";
            listaPartesMotor.Add(p2);

            PartesMotor p3 = new PartesMotor();

            p3.Numero      = 3;
            p3.Description = "frenos";
            listaPartesMotor.Add(p3);

            PartesMotor p4 = new PartesMotor();

            p4.Numero      = 4;
            p4.Description = "volante";
            listaPartesMotor.Add(p4);

            PartesMotor p5 = new PartesMotor();

            p5.Numero      = 5;
            p5.Description = "piston";
            listaPartesMotor.Add(p5);

            PartesMotor p6 = new PartesMotor();

            p6.Numero      = 6;
            p6.Description = "volante";
            listaPartesMotor.Add(p6);

            return(listaPartesMotor);
        }
        protected void btnAscendente_Click(object sender, EventArgs e)
        {
            //primer botón
            List <PartesMotor> datos = PartesMotor.CrearLista();
            //consulta clásica
            var lista = from p in datos
                        orderby p.Numero ascending
                        select p;

            //consulta  LAMBDA
            var listaLambda = datos
                              .OrderBy(p => p.Description)
                              .Select(p => p);

            foreach (PartesMotor partes in listaLambda)
            {
                Response.Write(string.Format("{0}{1}", partes.Numero, partes.Description));
                Response.Write("<br>");
            }
        }