public virtual IExerciceChoice ChooseAndShow(EExercice exercice) { IExerciceChoice choice = null; switch (exercice) { case EExercice.Exercice_1: choice = new Exercice_1(); break; case EExercice.Exercice_2: choice = new Exercice_2(); break; case EExercice.Exercice_3: choice = new Exercice_3(); break; case EExercice.Exercice_4: choice = new Exercice_4(); break; case EExercice.Exercice_5: choice = new Exercice_5(); break; case EExercice.Quit: default: break; } return(choice); }
public void ChooseAndShow() { var enumEExerciceMemberCount = Enum.GetNames(typeof(EExercice)).Length - 1; var choosed = true; do { Console.Clear(); Console.WriteLine($"Exercice - type your choice number from 1 to {enumEExerciceMemberCount} and b if want you to get back"); var _choice = Console.ReadKey().KeyChar; _choice = char.ToLower(_choice); Console.WriteLine(); choosed = true; switch (_choice) { case 'b': break; case '1': Exercice = EExercice.Exercice_1; break; case '2': Exercice = EExercice.Exercice_2; break; case '3': Exercice = EExercice.Exercice_3; break; case '4': Exercice = EExercice.Exercice_4; break; case '5': Exercice = EExercice.Exercice_5; break; default: choosed = false; break; } if (choosed) { break; } }while (1 == 1); ExerciceFactory exerciceFactory = new ExerciceFactory(); Choice = exerciceFactory.ChooseAndShow(Exercice); Choice?.RunExercice(); }