Example #1
0
        private static void QueryAvanzado()
        {
            var db = new DbContextLinqEntityFramework();

            //Esta linea muestra la consulta en sql server de tu consulta linq
            db.Database.Log = Console.WriteLine;

            var querySinLamda = from carro in db.Carros
                                group carro by carro.Fabricante into fabricante
                                select new
            {
                Nombre = fabricante.Key,
                Carros = (from carro in fabricante
                          orderby carro.Rendimiento descending
                          select carro).Take(2)
            };

            var queryConLamda = db.Carros.GroupBy(c => c.Fabricante)
                                .Select(g => new
            {
                Nombre = g.Key,
                Carros = g.OrderByDescending(c => c.Rendimiento).Take(2)
            });

            foreach (var grupo in querySinLamda)
            {
                Console.WriteLine(grupo.Nombre);
                foreach (var carro in grupo.Carros)
                {
                    Console.WriteLine($"\t{carro.Nombre} : {carro.Rendimiento}");
                }
            }
        }
Example #2
0
        private static void InsertDatos()
        {
            var carros = ProcesarArchivoFuelCSV("fuel.csv");
            var db     = new DbContextLinqEntityFramework();

            if (!db.Carros.Any())
            {
                foreach (var carro in carros)
                {
                    db.Carros.Add(carro);
                }

                db.SaveChanges();
            }
        }
Example #3
0
        private static void QueriesLinq()
        {
            var db = new DbContextLinqEntityFramework();

            //Esta linea muestra la consulta en sql server de tu consulta linq
            db.Database.Log = Console.WriteLine;

            //var querySinLamda = from carro in db.Carros
            //            orderby carro.Rendimiento descending, carro.Nombre ascending
            //            select carro;

            //foreach (var carro in querySinLamda.Take(10))
            //{
            //    Console.WriteLine($"{carro.Nombre} : {carro.Rendimiento}");
            //}


            //var queryConLamda = db.Carros
            //    .Where(c => c.Fabricante == "BMW ")
            //    .OrderByDescending(o => o.Rendimiento)
            //    .ThenBy(c => c.Nombre)
            //    .Take(10);


            //foreach (var carro in queryConLamda)
            //{
            //    Console.WriteLine($"{carro.Nombre} : {carro.Rendimiento}");
            //}

            var queryConLamda2 = db.Carros
                                 .Where(c => c.Fabricante == "BMW ")
                                 .OrderByDescending(o => o.Rendimiento)
                                 .ThenBy(c => c.Nombre)
                                 .Take(10)
                                 .Select(c => new { Nombre = c.Nombre.ToUpper() })
                                 .ToList();

            foreach (var item in queryConLamda2)
            {
                Console.WriteLine(item.Nombre);
            }
        }