예제 #1
0
        public override string ToString()
        {
            // (course type): Name=(course name); Teacher=(teacher name); Topics=[(course topics – comma separated)];
            // Lab=(lab name – when applicable); Town=(town name – when applicable);
            StringBuilder result = new StringBuilder();

            result.AppendFormat("{0}: Name={1}", this.GetType().Name, this.Name);
            if (this.Teacher != null)
            {
                result.AppendFormat("; Teacher={0}", this.Teacher.Name);
            }
            if (this.topics.Count > 0)
            {
                result.Append("; Topics=[");
                foreach (var topic in this.topics)
                {
                    result.Append(topic + ", ");
                }
                result.Length -= 2;
                result.Append("]");
            }
            if (this is LocalCourse)
            {
                LocalCourse course = this as LocalCourse;
                result.AppendFormat("; Lab={0}", course.Lab);
            }
            else if (this is OffsiteCourse)
            {
                OffsiteCourse course = this as OffsiteCourse;
                result.AppendFormat("; Town={0}", course.Town);
            }
            return(result.ToString());
        }
예제 #2
0
 public IOffsiteCourse CreateOffsiteCourse(string name, ITeacher teacher, string town)
 {
     if (name == null || town == null)
     {
         throw new ArgumentNullException("Either name or town are null");
     }
     else
     {
         IOffsiteCourse course = new OffsiteCourse();
         course.Name    = name;
         course.Teacher = teacher;
         course.Town    = town;
         return(course);
     }
 }
예제 #3
0
        static void Main()
        {
            LocalCourse localCourse = new LocalCourse("Databases");
            Console.WriteLine(localCourse);

            localCourse.Lab = "Enterprise";
            Console.WriteLine(localCourse);

            localCourse.Students = new List<string>() { "Peter", "Maria" };
            Console.WriteLine(localCourse);

            localCourse.TeacherName = "Svetlin Nakov";
            localCourse.AddStudent("Milena");
            localCourse.AddStudent("Todor");
            Console.WriteLine(localCourse);

            OffsiteCourse offsiteCourse = new OffsiteCourse(
                "PHP and WordPress Development", "Mario Peshev",
                new List<string>() { "Thomas", "Ani", "Steve" });
            Console.WriteLine(offsiteCourse);
        }
예제 #4
0
 public IOffsiteCourse CreateOffsiteCourse(string name, ITeacher teacher, string town)
 {
     var offsiteCourse = new OffsiteCourse(name, teacher, town);
     return offsiteCourse;
 }
예제 #5
0
        public IOffsiteCourse CreateOffsiteCourse(string name, ITeacher teacher, string town)
        {
            ICourse offsiteCourse = new OffsiteCourse(name, teacher, town);

            return((IOffsiteCourse)offsiteCourse);
        }
예제 #6
0
 public IOffsiteCourse CreateOffsiteCourse(string name, ITeacher teacher, string town)
 {
     if (name == null || town == null)
     {
         throw new ArgumentNullException("Either name or town are null");
     }
     else
     {
         IOffsiteCourse course = new OffsiteCourse();
         course.Name = name;
         course.Teacher = teacher;
         course.Town = town;
         return course;
     }
 }