Join Query : Query « LINQ « C# / CSharp Tutorial






using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

    class Customer
    {
        public string ID { get; set; }
        public string City { get; set; }
        public string Country { get; set; }
        public string Region { get; set; }
        public decimal Sales { get; set; }
    }
    class Order
    {
        public string ID { get; set; }
        public decimal Amount { get; set; }
    }
    class Program
    {
        static void Main(string[] args)
        {
            List<Order> orders = new List<Order> {
              new Order { ID="X", Amount=900 },
              new Order { ID="Y", Amount=1000 },
              new Order { ID="Z", Amount=1100 }
            };
            List<Customer> customers = new List<Customer> {
              new Customer { ID="X", City="Beijing", Country="China", Region="Asia", Sales=9000 },
              new Customer { ID="Y", City="Bogot", Country="Colombia", Region="South America", Sales=1001 },
              new Customer { ID="Z", City="Lima", Country="Peru", Region="South America", Sales=2002 }
           };

            var queryResults =
               from c in customers
               join o in orders on c.ID equals o.ID
               select new { c.ID, c.City, SalesBefore = c.Sales, NewOrder = o.Amount, SalesAfter = c.Sales+o.Amount };

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








22.3.Query
22.3.1.Query Expression
22.3.2.Chaining Query Operators/extracts all strings containing the letter 'a', sorts them by length, and then converts the results to uppercase
22.3.3.Use Contains, Length and ToUpper from Linq
22.3.4.Use select to retrieve all nodes in a Binary tree
22.3.5.Get Distinct departments with condition
22.3.6.Use LINQ to get Employees in the IT department from a tree
22.3.7.Use from where select to choose the Employees in the IT department from a tree
22.3.8.All employees in a tree are grouped by department
22.3.9.ArrayList Query
22.3.10.Complex Query Using Method Syntax
22.3.11.group query
22.3.12.query with extension methods
22.3.13.Join Query
22.3.14.Conduct query on the result again
22.3.15.Use a LINQ query to find the public enums
22.3.16.Define the query using IndexArray first.
22.3.17.Define the query using two from keywords.
22.3.18.Using Linq to get all methods