Mega Code Archive

 
Categories / C# / LINQ
 

Use Join on

using System; using System.Collections; using System.Collections.Generic; using System.Text; using System.Linq; using System.Reflection; class Salary {     int _id;     int _year;     double _salary;     public int ID {         get { return _id; }         set { _id = value; }     }     public int Year {         get { return _year; }         set { _year = value; }     }     public double SalaryPaid {         get { return _salary; }         set { _salary = value; }     } } class Employee {     int _id;     int _idRole;     string _lastName;     string _firstName;     public int ID {         get { return _id; }         set { _id = value; }     }     public int IDRole {         get { return _idRole; }         set { _idRole = value; }     }     public string LastName {         get { return _lastName; }         set { _lastName = value; }     }     public string FirstName {         get { return _firstName; }         set { _firstName = value; }     } } class Role {     int _id;     string role;     public int ID {         get { return _id; }         set { _id = value; }     }     public string Role {         get { return role; }         set { role = value; }     } } public class MainClass {     public static void Main() {         List<Employee> people = new List<Employee> {               new Employee  { ID = 1, IDRole = 1, LastName = "A", FirstName = "B"},               new Employee  { ID = 2, IDRole = 2, LastName = "G", FirstName = "T"},               new Employee  { ID = 3, IDRole = 2, LastName = "G", FirstName = "M"},               new Employee  { ID = 4, IDRole = 3, LastName = "C", FirstName = "G"}             };         List<Role> roles = new List<Role> {                new Role { ID = 1, Role = "Manager" },                new Role { ID = 2, Role = "Developer" }             };         List<Salary> salaries = new List<Salary> {                new Salary { ID = 1, Year = 2004, SalaryPaid = 10000.00 },                new Salary { ID = 1, Year = 2005, SalaryPaid = 15000.00 },                new Salary { ID = 1, Year = 2005, SalaryPaid = 15000.00 }             };         var query = from p in people                     join s in salaries on p.ID equals s.ID                     where p.ID == 1                     select s.SalaryPaid;         Console.Write(query.Min());         Console.Write(query.Max());     } }