/// <summary> /// Function called on questionnaire submission. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void cmdConfirm_Click(object sender, EventArgs e) { if (ccQuestionnaire.ValidatedData) { List <Question> submittedQuestions = ccQuestionnaire.AssociatedQuestionnaire.Questions; if (CurrentSubmission.Questionnaire.Questions.TestMatch(submittedQuestions)) { //lecit data CurrentSubmission.Questionnaire.Questions = submittedQuestions; CurrentSubmission.SubmissionIPAddress = Request.UserHostAddress; CurrentSubmission.Grade(); CurrentSubmission.BinarySerialize(CacheHandler.GetQuestionnaireSessionFolderPath(Cache)); Response.Redirect("./Result.aspx", false); Context.ApplicationInstance.CompleteRequest(); } else { //tampered data (high detail) CurrentSubmission.Anomalies.Add(new TamperedDataAnomaly(CurrentSubmission.Questionnaire.Questions, submittedQuestions)); _handleAnomalyOccurrence(); } } else { //tampered data (low detail) CurrentSubmission.Anomalies.Add(new TamperedDataAnomaly()); _handleAnomalyOccurrence(); } }