private void btnEnregistrer_Click(object sender, RoutedEventArgs e) { if (!ValiderChamps()) { MessageBox.Show(Erreurs.ToString(), "Erreur!", MessageBoxButton.OK, MessageBoxImage.Error); } else { MessageBoxResult mbr = MessageBox.Show("Êtes-vous certain de vouloir enregistrer ce tournoi?", "Enregistrer", MessageBoxButton.OKCancel, MessageBoxImage.Question, MessageBoxResult.Cancel); // Si on veut enregistrer le tournoi if (mbr == MessageBoxResult.OK) { LeTournoi = temp; bool success = LeTournoi.Insert(); Closing -= MetroWindow_Closing; Close(); } } }
/// <summary> /// une surcharge de la methode Tostring pour afficher les informations du joueurs pour l'enregistrement des statistiques /// </summary> /// <returns></returns> public override string ToString() { string _erreurs = string.Join(",", Erreurs.Select(n => n.ToString()).ToArray()); return(string.Format("{0}\t{1}\t{2}\t{3}", DateQuizz.ToString("yyyy-MM-d"), Nom, Resultat, _erreurs)); }
public ExceptionDeValidation(IEnumerable <ValidationFailure> echecs) : this() { var groupeEchecs = echecs .GroupBy(e => e.PropertyName, e => e.ErrorMessage); foreach (var failureGroup in groupeEchecs) { var propertyName = failureGroup.Key; var propertyFailures = failureGroup.ToArray(); Erreurs.Add(propertyName, propertyFailures); } }
/// <summary> /// Methode qui permets de tester la reponse du joueur en prenant en compte la reponse et la question(i) ; question (i) est une instance de QuestionQCM /// </summary> /// <param La reponse du joueur="reponse"></param> /// <param une instance de QuestionQCM ="question"></param> public void TesterRéponse(string reponse, QuestionQCM question) { if (reponse.Length == 0) // si le joueur ne répond pas à la question , nous levons une exception { throw new FormatException("Le format de la réponse est incorrecte vous devez choisir des lettres parmis celles qui sont proposées"); } for (int i = 0; i < reponse.Length; i++) // si la réponse n'est pas dans les possibilité de réponse , nous levons une exception { if (!question.PossibilitésRéponse.Contains(reponse[i])) { throw new FormatException("Le format de la réponse est incorrecte vous devez choisir des lettres parmis celles qui sont proposées"); } } if (string.Concat(reponse.OrderBy(c => c)) == question.RéponseQuestion) // si la réponse est correcte , nous incrémontons son score et le nombre des questions { NombreQuestions++; Score++; } else // Le cas inverse : Nous rajoutons le numéro de la question dans la liste des erreurs et on incrémonte le nombre des questions { NombreQuestions++; Erreurs.Add(question.Numéro); } }