示例#1
0
        // Use Orderby or thenby
        static void Main(string[] args)
        {
            // Using ThenBy
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    IQueryable<Person> sortedPersons = entities.Person
            //        .OrderBy(p => p.LastName)
            //        .ThenBy(p => p.FirstName);

            //    Console.WriteLine("The list of person sorted by last name then by first name:");
            //    foreach (Person sortedPerson in sortedPersons)
            //    {
            //        Console.WriteLine(sortedPerson.LastName + ", " + sortedPerson.FirstName);
            //    }
            //    Console.ReadKey();
            //}

            // Using ThenByDescending
            using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            {
                IOrderedQueryable <Product> query = entities.Product
                                                    .OrderBy(product => product.ListPrice)
                                                    .ThenByDescending(product => product.Name);

                foreach (Product product in query)
                {
                    Console.WriteLine("Product ID: {0} Product Name: {1} List Price {2}",
                                      product.ProductID,
                                      product.Name,
                                      product.ListPrice);
                }
                Console.ReadKey();
            }
        }
示例#2
0
        static void Main(string[] args)
        {
            using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            {
                IQueryable <string> productNames = entities.Product
                                                   .Select(p => p.Name);

                Console.WriteLine("Product Names:");
                foreach (String productName in productNames)
                {
                    Console.WriteLine(productName);
                }
                Console.ReadKey();
            }

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var query = entities.Product
            //        .Select(product => new
            //        {
            //            ProductId = product.ProductID,
            //            ProductName = product.Name
            //        });

            //    Console.WriteLine("Product Info:");
            //    foreach (var productInfo in query)
            //    {
            //        Console.WriteLine("Product Id: {0} Product name: {1} ", productInfo.ProductId, productInfo.ProductName);
            //    }
            //    Console.ReadKey();
            //}
        }
示例#3
0
        static void Main(string[] args)
        {
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var query = entities.Address
            //        .GroupBy(address => address.PostalCode);

            //    foreach (IGrouping<string, Address> addressGroup in query)
            //    {
            //        Console.WriteLine("Postal Code: {0}", addressGroup.Key);
            //        foreach (Address address in addressGroup)
            //        {
            //            Console.WriteLine("\t" + address.AddressLine1 +
            //                address.AddressLine2);
            //        }
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var query = entities.Person
            //        .GroupBy(p => p.LastName.Substring(0, 1))
            //        .OrderBy(p => p.Key);

            //    foreach (IGrouping<string, Person> group in query)
            //    {
            //        Console.WriteLine("Last names that start with the letter '{0}':",
            //            group.Key);
            //        foreach (Person person in group)
            //        {
            //            Console.WriteLine(person.LastName);
            //        }
            //    }
            //    Console.ReadKey();
            //}

            using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            {
                var query = entities.SalesOrderHeader
                            .GroupBy(order => order.CustomerID);

                foreach (IGrouping <int, SalesOrderHeader> group in query)
                {
                    Console.WriteLine("Customer ID: {0}", group.Key);
                    Console.WriteLine("Order Count: {0}", group.Count());

                    foreach (SalesOrderHeader sale in group)
                    {
                        Console.WriteLine("     Sale ID: {0}", sale.SalesOrderID);
                    }
                    Console.Write("");
                }
                Console.ReadKey();
            }
        }
示例#4
0
        static void Main(string[] args)
        {
            // SKIP
            //using (AdventureWorks2014Entities context = new AdventureWorks2014Entities())
            //{
            //    var addresses = context.Address;
            //    var orders = context.SalesOrderHeader;

            //    //LINQ to Entities only supports Skip on ordered collections.
            //    var query = (from address in addresses
            //                 from order in orders
            //                 where address.AddressID == order.Address.AddressID && address.City == "Seattle"
            //                 orderby order.SalesOrderID
            //                 select new
            //                 {
            //                     City = address.City,
            //                     OrderID = order.SalesOrderID,
            //                     OrderDate = order.OrderDate
            //                 }).Skip(2);

            //    Console.WriteLine("All but first 2 orders in Seattle:");
            //    foreach (var order in query)
            //    {
            //        Console.WriteLine("City: {0} Order ID: {1} Total Due: {2:d}",
            //            order.City, order.OrderID, order.OrderDate);
            //    }
            //    Console.ReadKey();
            //}

            // TAKE
            String city = "Seattle";

            using (AdventureWorks2014Entities context = new AdventureWorks2014Entities())
            {
                var addresses = context.Address;
                var orders    = context.SalesOrderHeader;

                var query = (from address in addresses
                             from order in orders
                             where address.AddressID == order.Address.AddressID && address.City == city
                             select new
                {
                    City = address.City,
                    OrderID = order.SalesOrderID,
                    OrderDate = order.OrderDate
                }).Take(3);
                Console.WriteLine("First 3 orders in Seattle:");
                foreach (var order in query)
                {
                    Console.WriteLine("City: {0} Order ID: {1} Total Due: {2:d}",
                                      order.City, order.OrderID, order.OrderDate);
                }
                Console.ReadKey();
            }
        }
示例#5
0
        static void Main(string[] args)
        {
            // ToArray
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var products = entities.Product;

            //    Product[] prodArray = (from product in products
            //                           orderby product.ListPrice descending
            //                           select product).ToArray();

            //    Console.WriteLine("Every price from highest to lowest:");
            //    foreach (Product product in prodArray)
            //    {
            //        Console.WriteLine(product.ListPrice);
            //    }
            //    Console.ReadKey();
            //}

            // ToDictionary
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var products = entities.Product;

            //    Dictionary<String, Product> scoreRecordsDict = products.
            //        ToDictionary(record => record.Name);

            //    Console.WriteLine("Top Tube's ProductID: {0}",
            //            scoreRecordsDict["Top Tube"].ProductID);

            //    Console.ReadKey();
            //}

            // ToList
            using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            {
                var products = entities.Product;

                List <Product> query = (from product in products
                                        orderby product.Name
                                        select product).ToList();

                Console.WriteLine("The product list, ordered by product name:");
                foreach (Product product in query)
                {
                    Console.WriteLine(product.Name.ToLower(CultureInfo.InvariantCulture));
                }
                Console.ReadKey();
            }
        }
示例#6
0
        static void Main(string[] args)
        {
            // FIRST
            string name = "caroline";

            using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            {
                var email = entities.EmailAddress;

                var query = email.First(em => em.EmailAddress1.StartsWith(name));

                Console.WriteLine("An email address starting with 'caroline': {0}", query.EmailAddress1);

                Console.ReadKey();
            }
        }
示例#7
0
        static void Main(string[] args)
        {
            using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            {
                var query = entities.Product
                            .Select(product => new
                {
                    ProductId   = product.ProductID,
                    ProductName = product.Name
                });

                Console.WriteLine("Product Info:");
                foreach (var productInfo in query)
                {
                    Console.WriteLine("Product Id: {0} Product name: {1} ", productInfo.ProductId, productInfo.ProductName);
                }
                Console.ReadKey();
            }
        }
        static void Main(string[] args)
        {
            // FIRST
            string firstName = "Brooke";

            using (AdventureWorks2014Entities context = new AdventureWorks2014Entities())
            {
                var persons = context.Person;

                Person query = (from person in persons
                                where person.FirstName == firstName
                                select person).First();

                Console.WriteLine("FirstName: " + query.FirstName);
                Console.WriteLine("LastName: " + query.LastName);

                Console.ReadKey();
            }
        }
示例#9
0
        static void Main(string[] args)
        {
            // GroupJoin
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;
            //    var details = entities.SalesOrderDetail;

            //    var query = orders.GroupJoin(details,
            //        order => order.SalesOrderID,
            //        detail => detail.SalesOrderID,
            //        (order, orderGroup) => new
            //        {
            //            CustomerID = order.SalesOrderID,
            //            OrderCount = orderGroup.Count()
            //        });

            //    foreach (var order in query)
            //    {
            //        Console.WriteLine("CustomerID: {0}  Orders Count: {1}",
            //            order.CustomerID, order.OrderCount);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var customers = entities.Customer;
            //    var orders = entities.SalesOrderHeader;

            //    var query = customers.GroupJoin(orders,
            //        customer => customer.CustomerID,
            //        order => order.Customer.CustomerID,
            //        (customer, customerGroup) => new
            //        {
            //            CustomerID = customer.CustomerID,
            //            OrderCount = customerGroup.Count(),
            //            Orders = customerGroup
            //        }).Take(30);

            //    foreach (var group in query)
            //    {
            //        Console.WriteLine("CustomerID: {0}", group.CustomerID);
            //        Console.WriteLine("Order Count: {0}", group.OrderCount);
            //        foreach (var orderInfo in group.Orders)
            //        {
            //            Console.WriteLine("     Sale ID: {0}", orderInfo.SalesOrderID);
            //        }
            //        Console.Write("");
            //    }
            //    Console.ReadKey();
            //}

            // JOIN
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var customers = entities.Customer;
            //    var orders = entities.SalesOrderHeader;

            //    var query = customers.Join(orders,
            //        order => order.CustomerID,
            //        customer => customer.Customer.CustomerID,
            //        (customer, order) => new
            //        {
            //            CustomerID = customer.CustomerID,
            //            SalesOrderID = order.SalesOrderID,
            //            FirstName = customer.Person.FirstName,
            //            LastName = customer.Person.LastName,
            //            TotalDue = order.TotalDue
            //        }).Take(20); // <-- Limit the query

            //    foreach (var customer_order in query)
            //    {
            //        Console.WriteLine("CustomerID: {0} "
            //                        + "SalesOrderID: {1} "
            //                        + "FirstName: {2} "
            //                        + "LastName: {3} "
            //                        + "TotalDue: {4}",
            //                customer_order.CustomerID,
            //                customer_order.SalesOrderID,
            //                customer_order.FirstName,
            //                customer_order.LastName,
            //                customer_order.TotalDue);
            //    }
            //    Console.ReadKey();
            //}

            using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            {
                var customers = entities.Customer;
                var orders    = entities.SalesOrderHeader;

                var query = customers.Join(orders,
                                           order => order.CustomerID,
                                           contact => contact.Customer.CustomerID,
                                           (customer, order) => new
                {
                    CustomerID   = customer.CustomerID,
                    SalesOrderID = order.SalesOrderID,
                    FirstName    = customer.Person.FirstName,
                    Lastname     = customer.Person.LastName,
                    TotalDue     = order.TotalDue
                }).GroupBy(record => record.CustomerID);

                foreach (var group in query)
                {
                    foreach (var customer_order in group)
                    {
                        Console.WriteLine("CustomerID: {0} "
                                          + "SalesOrderID: {1} "
                                          + "FirstName: {2} "
                                          + "LastName: {3} "
                                          + "TotalDue: {4}",
                                          customer_order.CustomerID,
                                          customer_order.SalesOrderID,
                                          customer_order.FirstName,
                                          customer_order.Lastname,
                                          customer_order.TotalDue);
                    }
                }
                Console.ReadKey();
            }
        }
        static void Main(string[] args)
        {
            // USING AVERAGE
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var products = entities.Product;

            //    var query = (from product in products
            //                 group product by product.Style into g
            //                 select new
            //                 {
            //                     Style = g.Key,
            //                     AverageListPrice = g.Average(product => product.ListPrice)
            //                 });

            //    foreach (var product in query)
            //    {
            //        Console.WriteLine("Product style: {0} Average list price: {1}",
            //            product.Style, product.AverageListPrice);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;

            //    var query = (from order in orders
            //                group order by order.Customer.CustomerID into g
            //                select new
            //                {
            //                    Category = g.Key,
            //                    averageTotalDue = g.Average(order => order.TotalDue)
            //                }).Take(20);

            //    foreach (var order in query)
            //    {
            //        Console.WriteLine("ContactID = {0} \t Average TotalDue = {1}",
            //            order.Category, order.averageTotalDue);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;

            //    var query = (from order in orders
            //                group order by order.Customer.CustomerID into g
            //                let averageTotalDue = g.Average(order => order.TotalDue)
            //                select new
            //                {
            //                    Category = g.Key,
            //                    CheapestProducts = g.Where(order => order.TotalDue == averageTotalDue)
            //                }).Take(20);

            //    foreach (var orderGroup in query)
            //    {
            //        Console.WriteLine("ContactID: {0}", orderGroup.Category);
            //        foreach (var order in orderGroup.CheapestProducts)
            //        {
            //            Console.WriteLine("Average total due for SalesOrderID {1} is: {0}",
            //                order.TotalDue, order.SalesOrderID);
            //        }
            //        Console.Write("\n");
            //    }
            //    Console.ReadKey();
            //}

            // COUNT
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var customers = entities.Customer;

            //    var query = (from customer in customers
            //                select new
            //                {
            //                    CustomerID = customer.CustomerID,
            //                    OrderCount = customer.SalesOrderHeader.Count()
            //                });

            //    foreach (var customer in query)
            //    {
            //        Console.WriteLine("CustomerID = {0} \t OrderCount = {1}",
            //            customer.CustomerID, customer.OrderCount);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var products = entities.Product;

            //    var query = from product in products
            //                group product by product.Color into g
            //                select new { Color = g.Key, ProductCount = g.Count() };

            //    foreach (var product in query)
            //    {
            //        Console.WriteLine("Color = {0} \t ProductCount = {1}",
            //            product.Color, product.ProductCount);
            //    }
            //    Console.ReadKey();
            //}

            // MAX
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;

            //    var query = (from order in orders
            //                group order by order.Customer.CustomerID into g
            //                select new
            //                {
            //                    Category = g.Key,
            //                    maxTotalDue = g.Max(order => order.TotalDue)
            //                }).Take(20);

            //    foreach (var order in query)
            //    {
            //        Console.WriteLine("CustomerID = {0} \t Maximum TotalDue = {1}",
            //            order.Category, order.maxTotalDue);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;

            //    var query = (from order in orders
            //                group order by order.Customer.CustomerID into g
            //                let maxTotalDue = g.Max(order => order.TotalDue)
            //                select new
            //                {
            //                    Category = g.Key,
            //                    CheapestProducts = g.Where(order => order.TotalDue == maxTotalDue)
            //                }).Take(20);

            //    foreach (var orderGroup in query)
            //    {
            //        Console.WriteLine("CustomerID: {0}", orderGroup.Category);
            //        foreach (var order in orderGroup.CheapestProducts)
            //        {
            //            Console.WriteLine("MaxTotalDue {0} for SalesOrderID {1}: ",
            //                order.TotalDue, order.SalesOrderID);
            //        }
            //    }
            //    Console.ReadKey();
            //}

            // MIN
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;

            //    var query = (from order in orders
            //                group order by order.Customer.CustomerID into g
            //                select new
            //                {
            //                    Category = g.Key,
            //                    smallestTotalDue = g.Min(order => order.TotalDue)
            //                }).Take(20);

            //    foreach (var order in query)
            //    {
            //        Console.WriteLine("CustomerID = {0} \t Minimum TotalDue = {1}",
            //            order.Category, order.smallestTotalDue);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities context = new AdventureWorks2014Entities())
            //{
            //    var orders = context.SalesOrderHeader;

            //    var query = (from order in orders
            //                group order by order.Customer.CustomerID into g
            //                let minTotalDue = g.Min(order => order.TotalDue)
            //                select new
            //                {
            //                    Category = g.Key,
            //                    smallestTotalDue = g.Where(order => order.TotalDue == minTotalDue)
            //                }).Take(20);


            //    foreach (var orderGroup in query)
            //    {
            //        Console.WriteLine("ContactID: {0}", orderGroup.Category);
            //        foreach (var order in orderGroup.smallestTotalDue)
            //        {
            //            Console.WriteLine("Mininum TotalDue {0} for SalesOrderID {1}: ",
            //                order.TotalDue, order.SalesOrderID);
            //        }
            //        Console.Write("\n");
            //    }
            //    Console.ReadKey();
            //}

            // SUM
            using (AdventureWorks2014Entities context = new AdventureWorks2014Entities())
            {
                var orders = context.SalesOrderHeader;

                var query = (from order in orders
                             group order by order.Customer.CustomerID into g
                             select new
                {
                    Category = g.Key,
                    TotalDue = g.Sum(order => order.TotalDue)
                }).Take(20);

                foreach (var order in query)
                {
                    Console.WriteLine("ContactID = {0} \t TotalDue sum = {1}",
                                      order.Category, order.TotalDue);
                }
                Console.ReadKey();
            }
        }
示例#11
0
        static void Main(string[] args)
        {
            // WHERE
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var onlineOrders = (from order in entities.SalesOrderHeader
            //                        where order.OnlineOrderFlag == true
            //                        select new
            //                        {
            //                            SalesOrderID = order.SalesOrderID,
            //                            OrderDate = order.OrderDate,
            //                            SalesOrderNumber = order.SalesOrderNumber
            //                        }).Take(20);

            //    foreach (var onlineOrder in onlineOrders)
            //    {
            //        Console.WriteLine("Order ID: {0} Order Date: {1:d} Order Number: {2}",
            //            onlineOrder.SalesOrderID, onlineOrder.OrderDate, onlineOrder.SalesOrderNumber);
            //    }
            //    Console.ReadKey();
            //}

            int orderQtyMin = 2;
            int orderQtyMax = 6;
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var query = (from order in entities.SalesOrderDetail
            //                 where order.OrderQty > orderQtyMin && order.OrderQty < orderQtyMax
            //                 select new
            //                 {
            //                     SalesOrderID = order.SalesOrderID,
            //                     OrderQty = order.OrderQty
            //                 }).Take(20);

            //    foreach (var order in query)
            //    {
            //        Console.WriteLine("Order ID: {0} Order Quantity: {1}",
            //            order.SalesOrderID, order.OrderQty);
            //    }
            //    Console.ReadKey();
            //}

            String color = "Red";

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var query = (from product in entities.Product
            //                where product.Color == color
            //                select new
            //                {
            //                    Name = product.Name,
            //                    ProductNumber = product.ProductNumber,
            //                    ListPrice = product.ListPrice
            //                }).Take(10);

            //    foreach (var product in query)
            //    {
            //        Console.WriteLine("Name: {0}", product.Name);
            //        Console.WriteLine("Product number: {0}", product.ProductNumber);
            //        Console.WriteLine("List price: ${0}", product.ListPrice);
            //        Console.WriteLine("");
            //    }
            //    Console.ReadKey();
            //}

            // WHERE...CONTAINS
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    IQueryable<SalesOrderHeader> query = (from order in entities.SalesOrderHeader
            //                                         where order.OrderDate >= new DateTime(2003, 12, 1)
            //                                         select order).Take(10);

            //    Console.WriteLine("Orders that were made after December 1, 2003:");
            //    foreach (SalesOrderHeader order in query)
            //    {
            //        Console.WriteLine("OrderID {0} Order date: {1:d} ",
            //            order.SalesOrderID, order.OrderDate);
            //        foreach (SalesOrderDetail orderDetail in order.SalesOrderDetail)
            //        {
            //            Console.WriteLine("  Product ID: {0} Unit Price {1}",
            //                orderDetail.ProductID, orderDetail.UnitPrice);
            //        }
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    int?[] productModelIds = { 19, 26, 118 };
            //    var products = from p in entities.Product
            //                   where productModelIds.Contains(p.ProductModelID)
            //                   select p;

            //    foreach (var product in products)
            //    {
            //        Console.WriteLine("{0}: {1}", product.ProductModelID, product.ProductID);
            //    }
            //    Console.ReadKey();
            //}

            using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            {
                var products = from p in entities.Product
                               where (new int?[] { 19, 26, 18 }).Contains(p.ProductModelID) ||
                               (new string[] { "L", "XL" }).Contains(p.Size)
                               select p;

                foreach (var product in products)
                {
                    Console.WriteLine("{0}: {1}, {2}", product.ProductID, product.ProductModelID, product.Size);
                }
                Console.ReadKey();
            }
        }
示例#12
0
        static void Main(string[] args)
        {
            // ORDER...BY
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    IQueryable<Person> sortedNames = (from n in entities.Person
            //                                     orderby n.LastName
            //                                     select n).Take(20);

            //    Console.WriteLine("The sorted list of last names:");
            //    foreach (Person n in sortedNames)
            //    {
            //        Console.WriteLine(n.LastName);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    IQueryable<Person> sortedNames = (from n in entities.Person
            //                                     orderby n.LastName.Length // <-- by lenght
            //                                     select n).Take(20);

            //    Console.WriteLine("The sorted list of last names (by lenght):");
            //    foreach (Person n in sortedNames)
            //    {
            //        Console.WriteLine(n.LastName);
            //    }
            //    Console.ReadKey();
            //}

            // ORDERBYDESCENDING
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    IQueryable<Decimal> sortedPrices = (from p in entities.Product
            //                                       orderby p.ListPrice descending
            //                                       select p.ListPrice).Take(20);

            //    Console.WriteLine("The list price from highest to lowest:");
            //    foreach (Decimal price in sortedPrices)
            //    {
            //        Console.WriteLine(price);
            //    }
            //    Console.ReadKey();
            //}

            // THENBY
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    IQueryable<Person> sortedPersons = (from person in entities.Person
            //                                        orderby person.LastName, person.FirstName
            //                                        select person).Take(20);

            //    Console.WriteLine("The list of contacts sorted by last name then by first name:");
            //    foreach (Person sortedPerson in sortedPersons)
            //    {
            //        Console.WriteLine(sortedPerson.LastName + ", " + sortedPerson.FirstName);
            //    }
            //    Console.ReadKey();
            //}

            // THENBYDESCEDING
            using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            {
                IQueryable<Product> query = (from product in entities.Product
                                            orderby product.Name, product.ListPrice descending
                                            select product).Take(20);

                foreach (Product product in query)
                {
                    Console.WriteLine("Product ID: {0} Product Name: {1} List Price {2}",
                        product.ProductID, product.Name, product.ListPrice);
                }
                Console.ReadKey();
            }
        }
        static void Main(string[] args)
        {
            // GROUPJOIN
            //using (AdventureWorks2014Entities context = new AdventureWorks2014Entities())
            //{
            //    var orders = context.SalesOrderHeader;
            //    var details = context.SalesOrderDetail;

            //    var query = (from order in orders
            //                join detail in details
            //                on order.SalesOrderID
            //                equals detail.SalesOrderID into orderGroup
            //                select new
            //                {
            //                    CustomerID = order.SalesOrderID,
            //                    OrderCount = orderGroup.Count()
            //                }).Take(20);

            //    foreach (var order in query)
            //    {
            //        Console.WriteLine("CustomerID: {0}  Orders Count: {1}",
            //            order.CustomerID, order.OrderCount);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities context = new AdventureWorks2014Entities())
            //{
            //    var customers = context.Customer;
            //    var orders = context.SalesOrderHeader;

            //    var query = (from customer in customers
            //                join order in orders
            //                on customer.CustomerID
            //                equals order.Customer.CustomerID into customerGroup
            //                select new
            //                {
            //                    CustomerID = customer.CustomerID,
            //                    OrderCount = customerGroup.Count(),
            //                    Orders = customerGroup
            //                }).Take(20);

            //    foreach (var group in query)
            //    {
            //        Console.WriteLine("ContactID: {0}", group.CustomerID);
            //        Console.WriteLine("Order count: {0}", group.OrderCount);
            //        foreach (var orderInfo in group.Orders)
            //        {
            //            Console.WriteLine("   Sale ID: {0}", orderInfo.SalesOrderID);
            //        }
            //        Console.WriteLine("");
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities context = new AdventureWorks2014Entities())
            //{
            //    var customers = context.Customer;
            //    var orders = context.SalesOrderHeader;

            //    var query = (from customer in customers
            //                join order in orders
            //                on customer.CustomerID
            //                equals order.Customer.CustomerID into customerGroup
            //                select new
            //                {
            //                    ContactID = customer.CustomerID,
            //                    OrderCount = customerGroup.Count(),
            //                    Orders = customerGroup
            //                }).Take(20);

            //    foreach (var group in query)
            //    {
            //        Console.WriteLine("ContactID: {0}", group.ContactID);
            //        Console.WriteLine("Order count: {0}", group.OrderCount);
            //        foreach (var orderInfo in group.Orders)
            //        {
            //            Console.WriteLine("   Sale ID: {0}", orderInfo.SalesOrderID);
            //        }
            //        Console.WriteLine("");
            //    }
            //    Console.ReadKey();
            //}

            using (AdventureWorks2014Entities context = new AdventureWorks2014Entities())
            {
                var orders  = context.SalesOrderHeader;
                var details = context.SalesOrderDetail;

                var query = (from order in orders
                             join detail in details
                             on order.SalesOrderID equals detail.SalesOrderID
                             where order.OnlineOrderFlag == true &&
                             order.OrderDate.Month == 8
                             select new
                {
                    SalesOrderID = order.SalesOrderID,
                    SalesOrderDetailID = detail.SalesOrderDetailID,
                    OrderDate = order.OrderDate,
                    ProductID = detail.ProductID
                }).Take(20);

                foreach (var order in query)
                {
                    Console.WriteLine("{0}\t{1}\t{2:d}\t{3}",
                                      order.SalesOrderID,
                                      order.SalesOrderDetailID,
                                      order.OrderDate,
                                      order.ProductID);
                }
                Console.ReadKey();
            }
        }
示例#14
0
        static void Main(string[] args)
        {
            //using (AdventureWorks2014Entities context = new AdventureWorks2014Entities())
            //{
            //    var query = (from address in context.Address
            //                group address by address.PostalCode into addressGroup
            //                select new
            //                {
            //                    PostalCode = addressGroup.Key,
            //                    AddressLine = addressGroup
            //                }).Take(20);

            //    foreach (var addressGroup in query)
            //    {
            //        Console.WriteLine("Postal Code: {0}", addressGroup.PostalCode);
            //        foreach (var address in addressGroup.AddressLine)
            //        {
            //            Console.WriteLine("\t" + address.AddressLine1 + address.AddressLine2);
            //        }
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities context = new AdventureWorks2014Entities())
            //{
            //    var query = (from person in context.Person
            //                 group person by person.LastName.Substring(0, 1) into personGroup
            //                 select new
            //                 {
            //                     FirstLetter = personGroup.Key,
            //                     Names = personGroup
            //                 }).OrderBy(letter => letter.FirstLetter).Take(20);

            //    foreach (var person in query)
            //    {
            //        Console.WriteLine("Last names that start with the letter '{0}':",
            //            person.FirstLetter);
            //        foreach (var name in person.Names)
            //        {
            //            Console.WriteLine(name.LastName);
            //        }
            //    }
            //    Console.ReadKey();

            //}

            using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            {
                var query = (from order in entities.SalesOrderHeader
                             group order by order.CustomerID into idGroup
                             select new
                {
                    CustomerID = idGroup.Key,
                    OrderCount = idGroup.Count(),
                    Sales = idGroup
                }).Take(20);

                foreach (var orderGroup in query)
                {
                    Console.WriteLine("Customer ID: {0}", orderGroup.CustomerID);
                    Console.WriteLine("Order Count: {0}", orderGroup.OrderCount);
                    foreach (SalesOrderHeader sale in orderGroup.Sales)
                    {
                        Console.WriteLine("     Sale ID: {0}", sale.SalesOrderID);
                    }
                    Console.WriteLine("");
                }
                Console.ReadKey();
            }
        }
示例#15
0
        // Query syntax examples Filtering
        // Menambahkan where di query linq
        static void Main(string[] args)
        {
            //using (AdventureWorks2014Entities context = new AdventureWorks2014Entities())
            //{
            //    var emailPro = context.Person
            //        .Where(order => order.EmailPromotion == 2)
            //        .Select(s => new { s.BusinessEntityID, s.FirstName, s.LastName });

            //    foreach (var emailProm in emailPro)
            //    {
            //        Console.WriteLine("Bussiness ID: {0} Name: {1}, {2}",
            //            emailProm.BusinessEntityID,
            //            emailProm.FirstName,
            //            emailProm.LastName);
            //    }
            //    Console.ReadKey();
            //}

            //int orderQtyMin = 2;
            //int orderQtyMax = 6;
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var query = entities.WorkOrder
            //        .Where(order => order.OrderQty > orderQtyMin && order.OrderQty < orderQtyMax)
            //        .Select(s => new { s.WorkOrderID, s.OrderQty });

            //    foreach (var order in query)
            //    {
            //        Console.WriteLine("Order ID: {0} Order quantity: {1}",
            //            order.WorkOrderID, order.OrderQty);
            //    }
            //    Console.ReadKey();
            //}

            //String color = "Silver";
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var query = entities.Product
            //        .Where(products => products.Color == color)
            //        .Select(p => new { p.Name, p.ProductNumber, p.ListPrice });

            //    foreach (var product in query)
            //    {
            //        Console.WriteLine("Name : {0}", product.Name);
            //        Console.WriteLine("Product Number : {0}", product.ProductNumber);
            //        Console.WriteLine("List Price : {0}", product.ListPrice);
            //        Console.WriteLine("");
            //    }
            //    Console.ReadKey();
            //}

            // with date
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    IQueryable<SalesOrderHeader> query = entities.SalesOrderHeader
            //        .Where(order => order.OrderDate >= new DateTime(2003, 12, 1)).Take(10);

            //    Console.WriteLine("Orders that were made after December 1, 2003:");
            //    foreach (SalesOrderHeader order in query)
            //    {
            //        Console.WriteLine("Order ID {0} Order date: {1:d}",
            //            order.SalesOrderID, order.OrderDate);

            //        foreach(SalesOrderDetail orderDetail in order.SalesOrderDetail)
            //        {
            //            Console.WriteLine("  Product ID : {0} Unit Price {1}",
            //                orderDetail.ProductID, orderDetail.UnitPrice);
            //        }
            //    }
            //    Console.ReadKey();
            //}

            // Where....Contains 1
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    int?[] productModelIds = { 19, 26, 118, };
            //    var products = entities.Product
            //        .Where(p => productModelIds.Contains(p.ProductModelID));

            //    foreach (var product in products)
            //    {
            //        Console.WriteLine("{0}: {1}", product.ProductModelID, product.ProductID);
            //    }
            //    Console.ReadKey();
            //}

            // where....Contains 2
            using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            {
                var products = entities.Product.
                               Where(p => (new int?[] { 19, 26, 18 }).Contains(p.ProductModelID) ||
                                     (new string[] { "L", "XL" }).Contains(p.Size));

                foreach (var product in products)
                {
                    Console.WriteLine("{0}: {1}, {2}", product.ProductID,
                                      product.ProductModelID,
                                      product.Size);
                }
                Console.ReadKey();
            }
        }
示例#16
0
        static void Main(string[] args)
        {
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    IQueryable<Product> productsQuery = from product in entities.Product
            //                                        select product;

            //    Console.WriteLine("Product Names:");
            //    foreach (var prod in productsQuery)
            //    {
            //        Console.WriteLine(prod.Name);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    IQueryable<string> productNames = from p in entities.Product
            //                                      select p.Name;

            //    Console.WriteLine("Product Names:");
            //    foreach (String productName in productNames)
            //    {
            //        Console.WriteLine(productName);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var query = from product in entities.Product
            //                select new
            //                {
            //                    ProductId = product.ProductID,
            //                    ProductName = product.Name
            //                };

            //    Console.WriteLine("Product Info:");
            //    foreach (var productInfo in query)
            //    {
            //        Console.WriteLine("Product Id: {0} Product name: {1} ",
            //            productInfo.ProductId, productInfo.ProductName);
            //    }
            //    Console.ReadKey();
            //}

            // From … From … (SelectMany)
            // decimal totalDue = 500.00M;
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var customers = entities.Customer;
            //    var orders = entities.SalesOrderHeader;

            //    var query = (from customer in customers
            //                from order in orders
            //                where customer.CustomerID == order.Customer.CustomerID && order.TotalDue < totalDue
            //                select new
            //                {
            //                    CustomerID = customer.CustomerID,
            //                    LastName = customer.Person.LastName,
            //                    FirstName = customer.Person.FirstName,
            //                    OrderID = order.SalesOrderID,
            //                    Total = order.TotalDue
            //                }).Take(10);

            //    foreach (var smallOrder in query)
            //    {
            //        Console.WriteLine("Customer ID: {0} Name: {1}, {2} Order ID: {3} Total Due: ${4} ",
            //            smallOrder.CustomerID, smallOrder.LastName, smallOrder.FirstName,
            //            smallOrder.OrderID, smallOrder.Total);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var customers = entities.Customer;
            //    var orders = entities.SalesOrderHeader;

            //    var query = (from customer in customers
            //                 from order in orders
            //                 where customer.CustomerID == order.Customer.CustomerID && order.OrderDate >= new DateTime(2002, 10, 1)
            //                 select new
            //                 {
            //                     CustomerID = customer.CustomerID,
            //                     LastName = customer.Person.LastName,
            //                     FirstName = customer.Person.FirstName,
            //                     OrderID = order.SalesOrderID,
            //                     OrderDate = order.OrderDate
            //                 }).Take(10);

            //    foreach (var order in query)
            //    {
            //        Console.WriteLine("Customer ID: {0} Name: {1}, {2} Order ID: {3} Order Date: {4:d}",
            //            order.CustomerID, order.LastName, order.FirstName,
            //            order.OrderID, order.OrderDate);
            //    }
            //    Console.ReadKey();
            //}

            decimal totalDue = 10000.0M;

            using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            {
                var customers = entities.Customer;
                var orders    = entities.SalesOrderHeader;

                var query = (from customer in customers
                             from order in orders
                             let total = order.TotalDue
                                         where customer.CustomerID == order.Customer.CustomerID && total >= totalDue
                                         select new
                {
                    CustomerID = customer.CustomerID,
                    LastName = customer.Person.LastName,
                    OrderID = order.SalesOrderID,
                    total
                }).Take(20);

                foreach (var order in query)
                {
                    Console.WriteLine("Customer ID: {0} Last name: {1} Order ID: {2} Total: {3}",
                                      order.CustomerID, order.LastName, order.OrderID, order.total);
                }
                Console.ReadKey();
            }
        }
示例#17
0
        static void Main(string[] args)
        {
            // AVERAGE
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var products = entities.Product;

            //    Decimal averageListPrice = products.Average(product => product.ListPrice);

            //    Console.WriteLine("The average list price of all the products is ${0}",
            //        averageListPrice);

            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var products = entities.Product;

            //    var query = from product in products
            //                group product by product.Style into g
            //                select new
            //                {
            //                    Style = g.Key,
            //                    AverageListPrice = g.Average(product => product.ListPrice)
            //                };

            //    foreach (var product in query)
            //    {
            //        Console.WriteLine("Product style: {0} Average list price: {1}",
            //            product.Style, product.AverageListPrice);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;

            //    Decimal averageTotalDue = orders.Average(order => order.TotalDue);
            //    Console.WriteLine("The average TotalDue is {0}.", averageTotalDue);

            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;

            //    var query = from order in orders
            //                group order by order.AccountNumber into g
            //                select new
            //                {
            //                    Category = g.Key,
            //                    averageTotalDue = g.Average(order => order.TotalDue)
            //                };

            //    foreach (var order in query)
            //    {
            //        Console.WriteLine("AccountNumber = {0} \t Average TotalDue = {1}",
            //            order.Category, order.averageTotalDue);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;

            //    var query = from order in orders
            //                group order by order.Customer.PersonID into g
            //                let averageTotalDue = g.Average(order => order.TotalDue)
            //                select new
            //                {
            //                    Category = g.Key,
            //                    CheapestProducts =
            //                            g.Where(order => order.TotalDue == averageTotalDue)
            //                };

            //    foreach (var orderGroup in query)
            //    {
            //        Console.WriteLine("PersonID: {0}", orderGroup.Category);
            //        foreach (var order in orderGroup.CheapestProducts)
            //        {
            //            Console.WriteLine("Average total due for SalesOrderID {1} is: {0}",
            //                order.TotalDue, order.SalesOrderID);
            //        }
            //        Console.Write("\n");
            //    }
            //    Console.ReadKey();
            //}

            // COUNT
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var products = entities.Product;

            //    int numProducts = products.Count();

            //    Console.WriteLine("There are {0} products.", numProducts);

            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var products = entities.Product;

            //    var query = from product in products
            //                group product by product.Color into g
            //                select new { Color = g.Key, ProductCount = g.Count() };

            //    foreach (var product in query)
            //    {
            //        Console.WriteLine("Color = {0} \t ProductCount = {1}",
            //            product.Color,
            //            product.ProductCount);
            //    }
            //    Console.ReadKey();
            //}

            // LONG COUNT
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var persons = entities.Person;

            //    long numberOfPerson = persons.LongCount();
            //    Console.WriteLine("There are {0} Persons", numberOfPerson);

            //    Console.ReadKey();
            //}

            // MAX
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;

            //    Decimal maxTotalDue = orders.Max(w => w.TotalDue);
            //    Console.WriteLine("The maximum TotalDue is {0}.", maxTotalDue);

            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;

            //    var query = from order in orders
            //                group order by order.Customer.PersonID into g
            //                select new
            //                {
            //                    Category = g.Key,
            //                    maxTotalDue = g.Max(order => order.TotalDue)
            //                };

            //    foreach (var order in query)
            //    {
            //        Console.WriteLine("PersonID = {0} \t Maximum TotalDue = {1}",
            //            order.Category, order.maxTotalDue);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;

            //    var query = from order in orders
            //                group order by order.Customer.PersonID into g
            //                let maxTotalDue = g.Max(order => order.TotalDue)
            //                select new
            //                {
            //                    Category = g.Key,
            //                    CheapestProducts = g.Where(order => order.TotalDue == maxTotalDue)
            //                };

            //    foreach (var orderGroup in query)
            //    {
            //        Console.WriteLine("PersonID: {0}", orderGroup.Category);
            //        foreach (var order in orderGroup.CheapestProducts)
            //        {
            //            Console.WriteLine("MaxTotalDue {0} for SalesOrderID {1}: ",
            //                order.TotalDue,
            //                order.SalesOrderID);
            //        }
            //        Console.Write("\n");
            //    }
            //    Console.ReadKey();
            //}

            // MIN
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;

            //    Decimal smallestTotalDue = orders.Min(totalDue => totalDue.TotalDue);
            //    Console.WriteLine("The smallest TotalDue is {0}.",
            //        smallestTotalDue);

            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;

            //    var query = from order in orders
            //                group order by order.Customer.PersonID into g
            //                select new
            //                {
            //                    Category = g.Key,
            //                    smallestTotalDue = g.Min(order => order.TotalDue)
            //                };

            //    foreach (var order in query)
            //    {
            //        Console.WriteLine("PersonID = {0} \t Minimum TotalDue = {1}",
            //            order.Category, order.smallestTotalDue);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderHeader;

            //    var query = from order in orders
            //                group order by order.Customer.PersonID into g
            //                let minTotalDue = g.Min(order => order.TotalDue)
            //                select new
            //                {
            //                    Category = g.Key,
            //                    smallestTotalDue = g.Where(order => order.TotalDue == minTotalDue)
            //                };

            //    foreach (var orderGroup in query)
            //    {
            //        Console.WriteLine("PersonID: {0}", orderGroup.Category);
            //        foreach (var order in orderGroup.smallestTotalDue)
            //        {
            //            Console.WriteLine("Minimum TotalDue {0} for SalesOrderID {1}: ",
            //                order.TotalDue,
            //                order.SalesOrderID);
            //        }
            //        Console.Write("\n");
            //    }
            //    Console.ReadKey();
            //}

            // SUM
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var orders = entities.SalesOrderDetail;

            //    double totalOrderQty = orders.Sum(o => o.OrderQty);
            //    Console.WriteLine("There are a total of {0} OrderQty.",
            //        totalOrderQty);
            //    Console.ReadKey();
            //}

            using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            {
                var orders = entities.SalesOrderHeader;

                var query = from order in orders
                            group order by order.Customer.PersonID into g
                            select new
                {
                    Category = g.Key,
                    TotalDue = g.Sum(order => order.TotalDue)
                };

                foreach (var order in query)
                {
                    Console.WriteLine("PersonID = {0} \t TotalDue sum = {1}",
                                      order.Category, order.TotalDue);
                }
                Console.ReadKey();
            }
        }
示例#18
0
        static void Main(string[] args)
        {
            // SKIP
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    // LINQ to Entities only support Skip on ordered collections.
            //    IOrderedQueryable<Product> products = entities.Product
            //        .OrderBy(p => p.ListPrice);

            //    IQueryable<Product> allButFirst3Products = products.Skip(3);

            //    Console.WriteLine("All but first 3 products: ");
            //    foreach (Product product in allButFirst3Products)
            //    {
            //        Console.WriteLine("Name: {0} \t ID: {1}", product.Name, product.ProductID);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var addresses = entities.Address;
            //    var orders = entities.SalesOrderHeader;

            //    // LINQ to Entities only supports Skip on ordered collections.
            //    var query = (from address in addresses
            //                 from order in orders
            //                 where address.AddressID == order.Address.AddressID && address.City == "Seattle"
            //                 orderby order.SalesOrderID
            //                 select new
            //                 {
            //                     City = address.City,
            //                     OrderID = order.SalesOrderID,
            //                     OrderDate = order.OrderDate
            //                 }).Skip(2).Take(10); // <-- This for limit (.Take(10))

            //    Console.WriteLine("All but first 2 orders in Seattle");
            //    foreach (var order in query)
            //    {
            //        Console.WriteLine("City: {0} Order ID: {1} Total Due: {2:d}",
            //            order.City, order.OrderID, order.OrderDate);
            //    }
            //    Console.ReadKey();
            //}

            // TAKE
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    IQueryable<Person> firstPerson = entities.Person.Take(5);

            //    Console.WriteLine("First 5 persons :");
            //    foreach(Person person in firstPerson)
            //    {
            //        Console.WriteLine("Title = {0} \t FirstName = {1} \t LastName = {2}",
            //            person.Title,
            //            person.FirstName,
            //            person.LastName);
            //    }
            //    Console.ReadKey();
            //}

            String city = "Seattle";

            using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            {
                var addresses = entities.Address;
                var orders    = entities.SalesOrderHeader;

                var query = (from address in addresses
                             from order in orders
                             where address.AddressID == order.Address.AddressID && address.City == city
                             select new
                {
                    City = address.City,
                    OrderID = order.SalesOrderID,
                    OrderDate = order.OrderDate
                }).Take(3);
                Console.WriteLine("First 3 orders in Seattle:");
                foreach (var order in query)
                {
                    Console.WriteLine("City: {0} Order ID: {1} Order Date {2:d}",
                                      order.City, order.OrderID, order.OrderDate);
                }
                Console.ReadKey();
            }
        }
示例#19
0
        static void Main(string[] args)
        {
            string lastName = "Zhou";
            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    IQueryable<SalesOrderHeader> ordersQuery = entities.Customer
            //        .Where(c => c.Person.LastName == lastName)
            //        .SelectMany(c => c.SalesOrderHeader);

            //    foreach (var order in ordersQuery)
            //    {
            //        Console.WriteLine("Order ID: {0}, Order Date: {1}, Total Due: {2}",
            //            order.SalesOrderID, order.OrderDate, order.TotalDue);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var ordersQuery = entities.Customer
            //        .Where(c => c.Person.LastName == lastName)
            //        .Select(c => new
            //        {
            //            CustomerID = c.CustomerID,
            //            Total = c.SalesOrderHeader.Sum(o => o.TotalDue)
            //        });

            //    foreach (var customer in ordersQuery)
            //    {
            //        Console.WriteLine("Customer ID: {0} Orders total: {1}", customer.CustomerID, customer.Total);
            //    }
            //    Console.ReadKey();
            //}

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var ordersQuery = entities.Customer
            //        .Where(c => c.Person.LastName == lastName)
            //        .Select(c => new
            //        {
            //            LastName = c.Person.LastName,
            //            Orders = c.SalesOrderHeader
            //        });

            //    foreach (var order in ordersQuery)
            //    {
            //        Console.WriteLine("Name: {0}", order.LastName);
            //        foreach (SalesOrderHeader orderInfo in order.Orders)
            //        {
            //            Console.WriteLine("Order ID: {0}, Order date: {1}, Total Due: {2}",
            //                orderInfo.SalesOrderID, orderInfo.OrderDate, orderInfo.TotalDue);
            //        }
            //        Console.Write("");
            //    }
            //    Console.ReadKey();
            //}

            string city = "Seattle";

            //using (AdventureWorks2014Entities entities = new AdventureWorks2014Entities())
            //{
            //    var ordersQuery = entities.SalesOrderHeader
            //        .Where(o => o.Address.City == city)
            //        .Select(o => new
            //        {
            //            CustomerLastName = o.Customer.Person.LastName,
            //            CustomerFirstName = o.Customer.Person.FirstName,
            //            StreetAddress = o.Address.AddressLine1,
            //            OrderNumber = o.SalesOrderNumber,
            //            TotalDue = o.TotalDue
            //        });

            //    foreach (var orderInfo in ordersQuery)
            //    {
            //        Console.WriteLine("Name: {0}, {1}", orderInfo.CustomerLastName, orderInfo.CustomerFirstName);
            //        Console.WriteLine("Street address: {0}", orderInfo.StreetAddress);
            //        Console.WriteLine("Order number: {0}", orderInfo.OrderNumber);
            //        Console.WriteLine("Total Due: {0}", orderInfo.TotalDue);
            //        Console.WriteLine("");
            //    }
            //    Console.ReadKey();
            //}

            using (AdventureWorks2014Entities context = new AdventureWorks2014Entities())
            {
                IQueryable <SalesOrderHeader> query =
                    (from order in context.SalesOrderHeader
                     where order.OrderDate >= new DateTime(2003, 12, 1)
                     select order).Take(20);


                Console.WriteLine("Orders that were made after December 1, 2003:");
                foreach (SalesOrderHeader order in query)
                {
                    Console.WriteLine("OrderID {0} Order date: {1:d} ",
                                      order.SalesOrderID, order.OrderDate);
                    foreach (SalesOrderDetail orderDetail in order.SalesOrderDetail)
                    {
                        Console.WriteLine("  Product ID: {0} Unit Price {1}",
                                          orderDetail.ProductID, orderDetail.UnitPrice);
                    }
                }
                Console.ReadKey();
            }
        }