private List <QuizMakerModel> TranslateDataTableToQuizMakersModel(DataTable dataTable) { List <QuizMakerModel> quizMakerModels = new List <QuizMakerModel>(); foreach (DataRow row in dataTable.Rows) { QuizMakerModel quizMakerModel = new QuizMakerModel(); quizMakerModel.QuizMakerID = row["QuizMakerID"] != DBNull.Value ? Convert.ToInt64(row["QuizMakerID"].ToString()) : 0; quizMakerModel.GradeID = row["GradeID"] != DBNull.Value ? Convert.ToInt64(row["GradeID"].ToString()) : 0; quizMakerModel.GradeName = row["GradeName"] != DBNull.Value ? Convert.ToString(row["GradeName"]) : string.Empty; quizMakerModel.SubjectID = row["SubjectID"] != DBNull.Value ? Convert.ToInt64(row["SubjectID"].ToString()) : 0; quizMakerModel.SubjectName = row["SubjectName"] != DBNull.Value ? Convert.ToString(row["SubjectName"]) : string.Empty; quizMakerModel.MainTopicID = row["MainTopicID"] != DBNull.Value ? Convert.ToInt64(row["MainTopicID"].ToString()) : 0; quizMakerModel.MainTopicNumber = row["MainTopicNumber"] != DBNull.Value ? Convert.ToString(row["MainTopicNumber"]) : string.Empty; quizMakerModel.SubTopicID = row["SubTopicID"] != DBNull.Value ? Convert.ToInt64(row["SubTopicID"].ToString()) : 0; quizMakerModel.SubTopicNumber = row["SubTopicNumber"] != DBNull.Value ? Convert.ToString(row["SubTopicNumber"]) : string.Empty; quizMakerModel.TimeLimit = row["TimeLimit"] != DBNull.Value ? Convert.ToString(row["TimeLimit"]) : string.Empty; quizMakerModel.TotalQuestions = row["TotalQuestions"] != DBNull.Value ? Convert.ToString(row["TotalQuestions"]) : string.Empty; quizMakerModel.TotalScore = row["TotalScore"] != DBNull.Value ? Convert.ToString(row["TotalScore"]) : string.Empty; quizMakerModel.Instructions = row["Instructions"] != DBNull.Value ? Convert.ToString(row["Instructions"]) : string.Empty; quizMakerModels.Add(quizMakerModel); } return(quizMakerModels); }
private DataTable TranslateQuizMakerListToDataTable(QuizMakerModel quizMakerModel) { DataTable dataTable = new DataTable(); dataTable.Clear(); //Create DataTable Columns dataTable.Columns.Add("GradeID", typeof(string)); dataTable.Columns.Add("SubjectID", typeof(string)); dataTable.Columns.Add("TopicNumber", typeof(string)); dataTable.Columns.Add("QuizNumber", typeof(string)); dataTable.Columns.Add("TimeLimit", typeof(string)); dataTable.Columns.Add("TotalQuestions", typeof(string)); dataTable.Columns.Add("TotalScore", typeof(string)); dataTable.Columns.Add("Instructions", typeof(string)); dataTable.Columns.Add("IsMultiple", typeof(bool)); dataTable.Columns.Add("IsTF", typeof(bool)); dataTable.Columns.Add("IsFillBlank", typeof(bool)); dataTable.Columns.Add("MainTopicID", typeof(long)); dataTable.Columns.Add("SubTopicID", typeof(long)); dataTable.Columns.Add("CreatedOn", typeof(DateTime)); dataTable.Columns.Add("CreatedBy", typeof(int)); dataTable.Columns.Add("ModifiedOn", typeof(DateTime)); dataTable.Columns.Add("ModifiedBy", typeof(int)); if (quizMakerModel != null) { DataRow dr = dataTable.NewRow(); dr["GradeID"] = quizMakerModel.GradeID; dr["SubjectID"] = quizMakerModel.SubjectID; dr["TopicNumber"] = quizMakerModel.TopicNumber; dr["QuizNumber"] = quizMakerModel.QuizNumber; dr["TimeLimit"] = quizMakerModel.TimeLimit; dr["TotalQuestions"] = quizMakerModel.TotalQuestions; dr["TotalScore"] = quizMakerModel.TotalScore; dr["Instructions"] = quizMakerModel.Instructions; dr["IsMultiple"] = quizMakerModel.IsMultiple; dr["IsTF"] = quizMakerModel.IsTF; dr["IsFillBlank"] = quizMakerModel.IsFillBlank; dr["MainTopicID"] = quizMakerModel.MainTopicID; dr["SubTopicID"] = quizMakerModel.SubTopicID; dr["CreatedOn"] = quizMakerModel.CreatedOn; dr["CreatedBy"] = quizMakerModel.CreatedBy; dr["ModifiedOn"] = quizMakerModel.ModifiedOn; dr["ModifiedBy"] = quizMakerModel.ModifiedBy; dataTable.Rows.Add(dr); } return(dataTable); }
public List<QuizMakerModel> GetAllQuizMakersByMainTopicID(long mainTopicID) { List<QuizMakerModel> quizMakerModels = new List<QuizMakerModel>(); DataTable dataTable = new DataTable(); try { SqlConnection conn = new SqlConnection(DbHelper.ConnectionString); SqlCommand command = new SqlCommand(@"dbo.uspGetAllQuizzesByMainTopicID", conn); command.CommandType = CommandType.StoredProcedure; command.Parameters.AddWithValue("@MainTopicID", mainTopicID); SqlDataAdapter dataAdapter = new SqlDataAdapter(command); dataAdapter.Fill(dataTable); foreach (DataRow row in dataTable.Rows) { QuizMakerModel quizMakerModel = new QuizMakerModel(); quizMakerModel.QuizMakerID = row["QuizMakerID"] != DBNull.Value ? Convert.ToInt64(row["QuizMakerID"].ToString()) : 0; quizMakerModel.GradeID = row["GradeID"] != DBNull.Value ? Convert.ToInt64(row["GradeID"].ToString()) : 0; quizMakerModel.GradeName = row["GradeName"] != DBNull.Value ? Convert.ToString(row["GradeName"]) : string.Empty; quizMakerModel.SubjectID = row["SubjectID"] != DBNull.Value ? Convert.ToInt64(row["SubjectID"].ToString()) : 0; quizMakerModel.SubjectName = row["SubjectName"] != DBNull.Value ? Convert.ToString(row["SubjectName"]) : string.Empty; quizMakerModel.MainTopicID = row["MainTopicID"] != DBNull.Value ? Convert.ToInt64(row["MainTopicID"].ToString()) : 0; quizMakerModel.MainTopicNumber = row["MainTopicNumber"] != DBNull.Value ? Convert.ToString(row["MainTopicNumber"]) : string.Empty; quizMakerModel.QuizNumber = row["QuizNumber"] != DBNull.Value ? Convert.ToString(row["QuizNumber"]) : string.Empty; //quizMakerModel.SubTopicID = row["SubTopicID"] != DBNull.Value ? Convert.ToInt64(row["SubTopicID"].ToString()) : 0; //quizMakerModel.SubTopicNumber = row["SubTopicNumber"] != DBNull.Value ? Convert.ToString(row["SubTopicNumber"]) : string.Empty; quizMakerModel.TimeLimit = row["TimeLimit"] != DBNull.Value ? Convert.ToString(row["TimeLimit"]) : string.Empty; quizMakerModel.TotalQuestions = row["TotalQuestions"] != DBNull.Value ? Convert.ToString(row["TotalQuestions"]) : string.Empty; quizMakerModel.TotalScore = row["TotalScore"] != DBNull.Value ? Convert.ToString(row["TotalScore"]) : string.Empty; quizMakerModel.Instructions = row["Instructions"] != DBNull.Value ? Convert.ToString(row["Instructions"]) : string.Empty; quizMakerModels.Add(quizMakerModel); } } catch (Exception ex) { throw ex; } finally { dataTable.Clear(); dataTable = null; } return quizMakerModels; }
public QuizMaker(QuizMakerModel quizMakerModel) { InitializeComponent(); }
private void btnSave_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(cmbGrades.Text)) { MessageBox.Show("Grade can't be blank!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else if (string.IsNullOrEmpty(cmbSubjects.Text)) { MessageBox.Show("Subjec can't be blank!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else if (string.IsNullOrEmpty(cmbTopicNo.Text)) { MessageBox.Show("Topic number can't be blank!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else if (string.IsNullOrEmpty(txtQuizNumber.Text)) { MessageBox.Show("Quiz number can't be blank!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else if (string.IsNullOrEmpty(txtTimeLimit.Text)) { MessageBox.Show("Time limit can't be blank!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } //else if (string.IsNullOrEmpty(txtTotalScores.Text)) //{ // MessageBox.Show("Total scores can't be blank!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); // return; //} //else if (string.IsNullOrEmpty(txtTotalQuestions.Text)) //{ // MessageBox.Show("Total questions can't be blank!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); // return; //} else if (multipleQuestionModelsGlobal.Count == 0 && trueFalseQuestionModelsGlobal.Count == 0) { MessageBox.Show("Please add at least one question!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else { QuizMakerModel quizMakerModel = new QuizMakerModel(); quizMakerModel.QuizMakerID = Convert.ToInt64(lblQuizMakerID.Text); quizMakerModel.GradeID = Convert.ToInt64(cmbGrades.SelectedValue); quizMakerModel.SubjectID = Convert.ToInt64(cmbSubjects.SelectedValue); long topicID = 0; string topicNumberString = Convert.ToString(cmbTopicNo.SelectedValue); if (!string.IsNullOrEmpty(topicNumberString)) { string topicType = topicNumberString.Substring(topicNumberString.IndexOf("-") + 1); if (topicType.ToLower() == "mt") { quizMakerModel.MainTopicID = Convert.ToInt64(topicNumberString.Substring(0, topicNumberString.IndexOf("-"))); quizMakerModel.SubTopicID = 0; } else if (topicType.ToLower() == "st") { quizMakerModel.SubTopicID = Convert.ToInt64(topicNumberString.Substring(0, topicNumberString.IndexOf("-"))); quizMakerModel.MainTopicID = 0; } } quizMakerModel.TopicNumber = cmbTopicNo.Text; quizMakerModel.QuizNumber = txtQuizNumber.Text; quizMakerModel.TimeLimit = txtTimeLimit.Text; quizMakerModel.TotalQuestions = txtTotalQuestions.Text; quizMakerModel.TotalScore = txtTotalScores.Text; quizMakerModel.Instructions = txtInstructions.Text; quizMakerModel.IsMultiple = rdbMultiple.Checked ? true : false; quizMakerModel.IsTF = rdbTF.Checked ? true : false; quizMakerModel.IsFillBlank = rdbFillBlank.Checked ? true : false; quizMakerModel.CreatedOn = DateTime.Now; quizMakerModel.CreatedBy = 1; // It will be added from users quizMakerModel.ModifiedOn = DateTime.Now; quizMakerModel.ModifiedBy = 1; // It will be added from users try { QuizMakerRepository quizMakerRepository = new QuizMakerRepository(); DataTable dataTableQuizMaker = TranslateQuizMakerListToDataTable(quizMakerModel); DataTable dataTableMultipleQuestion = TranslateMultipleQuestionAnswerListToDataTable(multipleQuestionModelsGlobal); DataTable dataTableTrueFalseQuestion = TranslateTrueFalseQuestionAnswerListToDataTable(trueFalseQuestionModelsGlobal); DataTable dataTableFillBlankQuestion = TranslateFillBlankQuestionAnswerListToDataTable(fillBlankQuestionModelsGlobal); long result = quizMakerRepository.SaveUpdateQuizMaker(dataTableQuizMaker, dataTableMultipleQuestion, dataTableTrueFalseQuestion, dataTableFillBlankQuestion); if (result > 0) { ShowStatus(true, "ADD"); } else { ShowStatus(false, string.Empty); } QuizMaker.multipleQuestionModelsGlobal = new List <MultipleQuestionModel>(); QuizMaker.trueFalseQuestionModelsGlobal = new List <TrueFalseQuestionModel>(); QuizMaker.fillBlankQuestionModelsGlobal = new List <FillBlankQuestionModel>(); //this.Close(); //Home home = new Home(); //home.Show(); } catch (Exception ex) { ShowStatus(false, string.Empty); } } }