void CheckRezult(bool IsTest = false) { if (IsShow) { return; } timer.Stop(); timer.Dispose(); #region SendRezult if (!IsTest && !SendRezult && !IsShow) { using (var db = new DBWokrSql(ConnectString)) { foreach (UserControlQuestion item in StackPanelQuestion.Children) { foreach (var ans in item.GetUserAnswers()) { db.AddRezult(Id_ticket, ans, item.IDquestion); } } SendRezult = true; #endregion #region CheckRezult int error = 0, countAnswerTrue = 0, userCountAnser = 0; foreach (UserControlQuestion item in StackPanelQuestion.Children) { var answers = db.GetAnswers(item.IDquestion, true).Select(x => x.ID); countAnswerTrue += answers.Count(); userCountAnser += item.GetUserAnswers().Count(); if (answers.Count() != item.GetUserAnswers().Count()) { error++; continue; } foreach (var ans in item.GetUserAnswers()) { if (!answers.Contains(ans)) { error++; break; } } } //update Ticket column isPasses if (error >= 3 || countAnswerTrue != userCountAnser) { MessageBox.Show("Ви не склали іспит"); } else { MessageBox.Show("Вітаємо! Ви успішно склали іспит. Нам дуже приємно працювати з такими фахівцями як Ви."); } db.UpdateTicketRezult(Id_ticket, error < 3); #endregion } } }