コード例 #1
0
 //Framework class - no hard coded logic
 public static void PromoteEmployee(List <Employee> employeeList, PromotionEligible promotionEligible)
 {
     foreach (Employee employee in employeeList)
     {
         if (promotionEligible(employee))
         {
             Console.WriteLine(employee.name + " is promoted.");
         }
         else
         {
             Console.WriteLine(employee.name + " is not promoted.");
         }
     }
 }
コード例 #2
0
        public static void Main(string[] args)
        {
            TypeHelloDelegate del = new TypeHelloDelegate(TypeHello);//Create instance of a delegate like a class

            del("Ujjwal");



            List <Employee> empList = new List <Employee>();

            empList.Add(new Employee()
            {
                name = "Ujjwal", age = 28, exp = 4
            });
            empList.Add(new Employee()
            {
                name = "Ankur", age = 27, exp = 6
            });
            empList.Add(new Employee()
            {
                name = "Faizal", age = 28, exp = 6
            });
            empList.Add(new Employee()
            {
                name = "Manu", age = 32, exp = 8
            });
            empList.Add(new Employee()
            {
                name = "Shubha", age = 17, exp = 0
            });

            PromotionEligible delPromotionEligibleAge = new PromotionEligible(PromotionAge);

            PromoteEmployee(empList, delPromotionEligibleAge);

            PromotionEligible delPromotionEligibleExp = new PromotionEligible(PromotionExperience);

            //PromoteEmployee(empList, delPromotionEligibleExp);



            Console.ReadLine();
        }