public static QuizElementGuess CreateQuizElement() { try { Console.WriteLine("Please enter your question."); Console.Write("> "); var question = Console.ReadLine(); Console.WriteLine("Please enter the correct answer."); Console.Write("> "); float correctAnswer = float.Parse(Console.ReadLine()); Console.WriteLine("Please enter a tolerance (in percent)."); Console.Write("> "); float tolerance = float.Parse(Console.ReadLine()) / 100; return(new QuizElementGuess(question, correctAnswer, tolerance)); } catch (System.FormatException) { Console.WriteLine("Invalid Input, please try again."); return(QuizElementGuess.CreateQuizElement()); } }
static void CreateNewQuizElement() { while (true) { DisplayQuestionTypes(); try { var input = Int32.Parse(Console.ReadLine()); QuizElement question = null; string basePath = "QuizElements\\"; switch (input) { case 1: question = QuizElementTrueFalse.CreateQuizElement(); AddToDatabase <QuizElementTrueFalse>(question, basePath + "TrueFalse.json"); break; case 2: question = QuizElementText.CreateQuizElement(); AddToDatabase <QuizElementText>(question, basePath + "Text.json"); break; case 3: question = QuizElementGuess.CreateQuizElement(); AddToDatabase <QuizElementGuess>(question, basePath + "Guess.json"); break; case 4: question = QuizElementMultAnswers.CreateQuizElement(); AddToDatabase <QuizElementMultAnswers>(question, basePath + "MultAnswers.json"); break; case 5: question = QuizElementSingleAnswer.CreateQuizElement(); AddToDatabase <QuizElementSingleAnswer>(question, basePath + "SingleAnswer.json"); break; default: break; } Console.Write("Saving question....."); if (question != null) { _quizElements.Add(question); Console.WriteLine("Done!"); } else { Console.WriteLine("Error!"); } break; } catch (System.FormatException) { Console.WriteLine("Input had the wring format, try again!"); } } }