Beispiel #1
0
        static void Main()
        {
            WriteLine("《面向对象程序设计》上机考试安排:");
            ComputerExaminationAbstractFactory oopExamFactory = new ComputerExaminationAbstractFactory();       //根据需要定义抽象工厂;
            IExaminationRoom oopExamRoom    = oopExamFactory.CreateExaminationRoom();                           //抽象工厂创建产品族中的某产品;
            IInvigilator     oopInvigilator = oopExamFactory.CreateInvigilator();                               //抽象工厂创建产品族中的某产品;

            oopExamRoom.ShowResult();
            oopInvigilator.ShowResult();

            WriteLine("《英语》笔试安排:");
            WrittenExaminationAbstractFactory englishExamFactory = new WrittenExaminationAbstractFactory();
            IExaminationRoom englishExamRoom    = englishExamFactory.CreateExaminationRoom();
            IInvigilator     englishInvigilator = englishExamFactory.CreateInvigilator();

            englishExamRoom.ShowResult();
            englishInvigilator.ShowResult();
            Console.ReadLine();
        }
Beispiel #2
0
        /// <summary>
        /// 创建监考;
        /// </summary>
        /// <returns>监考</returns>
        public IInvigilator CreateInvigilator()
        {
            IInvigilator teacher           = null;
            var          availableTeachers = from t in TeacherRepository.GetAll()
                                             select t;

            WriteLine("笔试可选监考人员有:");
            foreach (var availableTeacher in availableTeachers)
            {
                WriteLine($"工号:{availableTeacher.Number,-10}姓名:{availableTeacher.Name} ");
            }
            Write("请选择监考人员并输入工号称:");
            var teacherNumber = ReadLine();

            teacher = (from t in availableTeachers
                       where t.Number == teacherNumber
                       select t)
                      .FirstOrDefault();
            return(teacher);
        }
        /// <summary>
        /// 创建监考;
        /// </summary>
        /// <returns>监考</returns>
        public IInvigilator CreateInvigilator()
        {
            IInvigilator laboratoryStaff           = null;
            var          availableLaboratoryStaffs = from l in LaboratoryStaffRepository.GetAll()
                                                     select l;

            WriteLine("上机考试可选监考人员有:");
            foreach (var availableLaboratoryStaff in availableLaboratoryStaffs)
            {
                WriteLine($"工号:{availableLaboratoryStaff.Number,-10}姓名:{availableLaboratoryStaff.Name};");
            }
            Write("请选择监考人员并输入工号:");
            var laboratoryStaffNumber = ReadLine();

            laboratoryStaff = (from l in availableLaboratoryStaffs
                               where l.Number == laboratoryStaffNumber
                               select l)
                              .FirstOrDefault();
            return(laboratoryStaff);
        }