using System.Collections.Generic;
using System.Threading.Tasks;
namespace ConsoleApplication1
static List<Customers> cust;
static List<Order> orders;
static void Main(string[] args)
cust = new List<Customers>();
orders = new List<Order>();
int TNumberOfOrder = orders.Count();
Console.WriteLine("Total number of Orders is : " + TNumberOfOrder.ToString());
int TNumberOfOrderUnder500 = orders.Count(x => x.Price <= 500.0M);
Console.WriteLine("Total number of Orders under $500 is : " + TNumberOfOrderUnder500.ToString());
int TNumberOfOrderUpper500 = orders.Count(x => x.Price >= 500.0M);
Console.WriteLine("Total number of Orders upper $500 is : " + TNumberOfOrderUpper500.ToString());
decimal ThesumPrice = orders.Sum(x => x.Price );
Console.WriteLine("Total number of Orders upper $500 is : " + ThesumPrice.ToString());
var query = (from c in cust
where c.ID == o.CustomerID && c.Age <= 30
Console.WriteLine("The total cost of all orders placed by people aged 30 and under : " + query.ToString());
var query1 = (from c in cust
where c.ID == o.CustomerID && c.Age > 30
Console.WriteLine("The total cost of all orders placed by people aged 30 and under : " + query1.ToString());
var query2 = (from o in orders
orderby o.Price descending
select o.Price).Distinct ().Take(3);
Console.WriteLine("The 3 most expensive products : " );
foreach (var q in query2)
Console.WriteLine(q.ToString());
var query4 = (from o in orders
select o.Price).Distinct().Take(3);
Console.WriteLine("The 3 least expensive products : ");
foreach (var q in query4)
Console.WriteLine(q.ToString());
var firstquery = from c in cust
where o.CustomerID == c.ID
group by c.Last in groupcust
select new { c.First, c.Last, o };
Console.WriteLine( "\n" + "Customers and orders sorted by last name : " +"\n");
foreach (var q in firstquery)
Console.WriteLine(q.First + " " + q.Last + " " + q.o.Description + " " + q.o.Price + " " + q.o.Quantity);
public static void FillClasses()
cust = new List<Customers>()
new Customers(){ID = Guid.NewGuid(), Age = 23, First = "Joe", Last = "Smith"},
new Customers(){ID = Guid.NewGuid(), Age = 34, First = "Kevin", Last = "Costner"},
new Customers(){ID = Guid.NewGuid(), Age = 23, First = "Sally", Last = "Smuthers"},
new Customers(){ID = Guid.NewGuid(), Age = 56, First = "Mary", Last = "Jane"},
new Customers(){ID = Guid.NewGuid(), Age = 48, First = "Jane", Last = "Kendall"},
new Customers(){ID = Guid.NewGuid(), Age = 34, First = "Eve", Last = "Shrimp"},
new Customers(){ID = Guid.NewGuid(), Age = 31, First = "Donna", Last = "Lynn"},
new Customers(){ID = Guid.NewGuid(), Age = 21, First = "Sarah", Last = "Spicer"},
orders = new List<Order>()
new Order() {CustomerID = cust[0].ID, Description="Shoes", Price=150.23M, Quantity=1},
new Order() {CustomerID = cust[0].ID, Description="Phone", Price=130.25M, Quantity=1},
new Order() {CustomerID = cust[0].ID, Description="Jacket", Price=230.14M, Quantity=1},
new Order() {CustomerID = cust[1].ID, Description="Phone", Price=130.25M, Quantity=1},
new Order() {CustomerID = cust[1].ID, Description="Jacket", Price=230.14M, Quantity=1},
new Order() {CustomerID = cust[1].ID, Description="Pants", Price=70.56M, Quantity=1},
new Order() {CustomerID = cust[2].ID, Description="Jacket", Price=230.14M, Quantity=1},
new Order() {CustomerID = cust[2].ID, Description="Pants", Price=70.56M, Quantity=1},
new Order() {CustomerID = cust[2].ID, Description="Shirt", Price=49.99M, Quantity=1},
new Order() {CustomerID = cust[3].ID, Description="Pants", Price=70.56M, Quantity=1},
new Order() {CustomerID = cust[3].ID, Description="Shirt", Price=49.99M, Quantity=1},
new Order() {CustomerID = cust[3].ID, Description="Scarf", Price=23.69M, Quantity=1},
new Order() {CustomerID = cust[4].ID, Description="Shirt", Price=49.99M, Quantity=1},
new Order() {CustomerID = cust[4].ID, Description="Scarf", Price=23.69M, Quantity=1},
new Order() {CustomerID = cust[4].ID, Description="Car", Price=24200.15M, Quantity=1},
new Order() {CustomerID = cust[5].ID, Description="Scarf", Price=23.69M, Quantity=1},
new Order() {CustomerID = cust[5].ID, Description="Car", Price=24200.15M, Quantity=1},
new Order() {CustomerID = cust[5].ID, Description="Computer", Price=650.00M, Quantity=1},
new Order() {CustomerID = cust[6].ID, Description="Car", Price=24200.15M, Quantity=1},
new Order() {CustomerID = cust[6].ID, Description="Computer", Price=650.00M, Quantity=1},
new Order() {CustomerID = cust[6].ID, Description="Shoes", Price=150.23M, Quantity=1},
new Order() {CustomerID = cust[7].ID, Description="Computer", Price=650.00M, Quantity=1},
new Order() {CustomerID = cust[7].ID, Description="Jacket", Price=230.14M, Quantity=1},
new Order() {CustomerID = cust[7].ID, Description="Pants", Price=70.56M, Quantity=1},
public int Age { get; set; }
public string First { get; set; }
public string Last { get; set; }
public Guid ID { get; set; }
public string Description { get; set; }
public decimal Price { get; set; }
public int Quantity { get; set; }
public Guid CustomerID { get; set; }