Set Operators: Except : Except « 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="R", Amount=900 },
              new Order { ID="S", Amount=1000 },
              new Order { ID="T", Amount=1100 }
            };
            List<Customer> customers = new List<Customer> {
              new Customer { ID="Q", City="London", Country="UK", Region="Europe", Sales=8000 },
              new Customer { ID="R", City="Beijing", Country="China", Region="Asia", Sales=9000 },
              new Customer { ID="T", City="Lima", Country="Peru", Region="South America", Sales=2002 }
           };

            var customerIDs = from c in customers select c.ID;
            var orderIDs = from o in orders select o.ID;
            var ordersNoCustomers = orderIDs.Except(customerIDs);
            foreach (var item in ordersNoCustomers)
            {
                Console.Write("{0} ", item);
            }            
        }
    }








22.39.Except
22.39.1.Create the Except query
22.39.2.One array expect another array
22.39.3.Use Except to print numbers that are in one integer array, but not another
22.39.4.Use Except to print the first character of product names that aren't also the first character of customer names.
22.39.5.Except Prototype
22.39.6.Set Operators: Except