Insersect ID values from different tables in CSharp
Description
The following code shows how to insersect ID values from different tables.
Example
using System;// w ww .jav a2 s . c o m
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 customersWithOrders = customerIDs.Intersect(orderIDs);
foreach (var item in customersWithOrders){
Console.Write("{0} ", item);
}
}
}
The code above generates the following result.