private void btnRegister_Click(object sender, System.EventArgs e) { try { using (irQmDbContext db = new irQmDbContext()) { if (db.Lessons.Any(l => l.LessonName == txtLessonname.Text)) { lblResult.Text = "این درس قبلا ثبت شده است"; lblResult.ForeColor = Color.Red; return; } if (string.IsNullOrEmpty(txtLessonname.Text.Trim())) { lblResult.Text = "نام باید وارد شود"; lblResult.ForeColor = Color.Red; return; } var lesson = new Lesson(); lesson.LessonName = txtLessonname.Text.Trim(); lesson.Description = txtDesc.Text.Trim(); db.Lessons.Add(lesson); db.SaveChanges(); lblResult.Text = "ثبت با موفقیت انجام شد"; lblResult.ForeColor = Color.Green; } } catch { lblResult.Text = "ایرادی در ثبت به وجود آمده است"; lblResult.ForeColor = Color.Red; } }
private void Btnentire_Click(object sender, EventArgs e) { User user = new User(); user.Email = txtEmail.Text.Trim(); user.UserName = txtusername.Text.ToLower().Trim(); user.Password = txtpass.Text.GetHashCode().ToString(); user.Name = txtName.Text.Trim(); user.Family = txtFamily.Text; user.Role = comboRole.SelectedItem.ToString() == "مدیر" ? Roles.RoleSNames.Admin: Roles.RoleSNames.limited; user.UserId = Guid.NewGuid().ToString() + user.UserName.ToString().Substring(5); try { using (irQmDbContext db = new irQmDbContext()) { if (db.User.Any(u => u.UserName == txtusername.Text)) { lblResult.Text = "این نام کاربری قبلا ثبت شده است"; lblResult.ForeColor = Color.Red; return; } db.User.Add(user); db.SaveChanges(); lblResult.Text = "ثبت انجام شد"; lblResult.ForeColor = Color.Green; //linklogin.Visible = true; } }catch (Exception x) { lblResult.Text = "ایرادی در ثبت به وجود آمده است"; lblResult.ForeColor = Color.Red; } }
protected override void OnGotFocus(EventArgs e) { if (!isInitialized) { options.Items.Clear(); options.SelectedIndexChanged += options_SelectedIndexChanged; options.Visible = false; options.MaximumSize = new System.Drawing.Size(this.Width, this.Height * 5); options.Width = this.Width; options.Location = new System.Drawing.Point(this.Location.X, this.Location.Y + this.Height); this.Parent.Controls.Add(options); this.Parent.Controls.SetChildIndex(options, 0); using (irQmDbContext db = new irQmDbContext()) { var t = db.Tags.ToArray(); foreach (var tag in t) { tags.Add(tag.Value); } } isInitialized = true; } base.OnGotFocus(e); }
private void btnLogin_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(txtusername.Text) || string.IsNullOrWhiteSpace(txtpass.Text)) { MessageBox.Show("نام یا رمز عبور خالی است", "ورود نادرست", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } using (irQmDbContext db = new irQmDbContext()) { var user = db.User.FirstOrDefault(u => u.UserName == txtusername.Text.ToLower().Trim() && u.Password == txtpass.Text.GetHashCode().ToString()); if (user != null) { MasterForm main = new MasterForm(); irQm.BaseCodes.Utilities.Globals.CurrentUser = user; main.Show(); Settings.Default.passRemember = cbRemember.Checked; if (cbRemember.Checked) { Settings.Default.pass = txtpass.Text; Settings.Default.username = txtusername.Text; } Settings.Default.Save(); this.Close(); } else { MessageBox.Show("نام یا رمز عبور نادرست است", "ورود نادرست", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
private void btnSave_Click(object sender, EventArgs e) { try { using (irQmDbContext db = new irQmDbContext()) { var user = db.User.First(u => u.UserName == txtusername.Text); user.Email = txtEmail.Text; user.Name = txtName.Text; user.Family = txtFamily.Text; user.Role = (Roles.RoleSNames)comboRole.SelectedValue; if (user.Role.ToString() == "limited") { btnSelectUser.Visible = false; } else { btnSelectUser.Visible = true; } db.SaveChanges(); lblMessage.Text = "عملیات تغییر اطلاعات با موفقیت انجام شد"; } } catch { lblMessage.Text = "مشکلی در تغییر اطلاعات به وجود آمده است"; } }
private bool RegisterMultiChoices(irQmDbContext db) { if (ucMultiOption1.Options.Count(o => o.IsTrue) < 1) { lblMessage.Text = "گزینه یا گزینه های درست مشخص نشده است"; lblMessage.ForeColor = Color.Red; return(false); } var q = new MultiChoices(); q.Id = Guid.NewGuid().ToString(); q.Face = rbFace.Rtf; q.RegisterTime = DateTime.UtcNow; var tagsInBox = tagsBox1.Tags; var tags = db.Tags.Select(t => t.Value).ToArray(); foreach (var tg in tagsInBox.Where(t => !(tags.Contains(t)))) { var tag = new Tag(); tag.Value = tg; db.Tags.Add(tag); } foreach (var t in tagsInBox) { TagInQuestion <MultiChoices> tim = new TagInQuestion <MultiChoices>(); tim.QuestionId = q.Id; tim.TagId = t; db.TagInMultichoices.Add(tim); } var options = ucMultiOption1.Options; foreach (Option o in options) { o.MultiChoicesId = q.Id; db.Option.Add(o); } q.LessonName = comboLesson.Text.Trim(); q.CreatorUserId = BaseCodes.Utilities.Globals.CurrentUser.UserId; q.MultiSelections = ucMultiOption1.MultiSelect; db.MultiChoicesQuestions.Add(q); db.SaveChanges(); var newOptions = new List <Option>(); for (var i = 0; i < ucMultiOption1.Options.Count; i++) { newOptions.Add(new Option()); } ucMultiOption1.New(newOptions, ucMultiOption1.MultiSelect); return(true); }
private void ChangePassword(string password) { using (irQmDbContext db = new irQmDbContext()) { var usr = db.User.First(u => u.UserId == user.UserId); usr.Password = password.GetHashCode().ToString(); db.SaveChanges(); } lblMessage.ForeColor = Color.LimeGreen; lblMessage.Text = "عملیات تغییر رمز با موفقیت انجام شد"; }
public void UpdateTags() { tags.Clear(); using (irQmDbContext db = new irQmDbContext()) { var t = db.Tags.ToArray(); foreach (var tag in t) { tags.Add(tag.Value); } } }
private bool RegisterTrueOrFalse(irQmDbContext db) { if (!ucTrueFalseAnswer1.isTrue && !ucTrueFalseAnswer1.isFalse) { lblMessage.Text = "گزینه درست مشخص نشده است"; lblMessage.ForeColor = Color.Red; return(false); } var q = new TFQuestion(); q.Id = Guid.NewGuid().ToString(); q.Face = rbFace.Rtf; q.RegisterTime = DateTime.UtcNow; var tagsInBox = tagsBox1.Tags; var tags = db.Tags.Select(t => t.Value).ToArray(); foreach (var tg in tagsInBox.Where(t => !(tags.Contains(t)))) { var tag = new Tag(); tag.Value = tg; db.Tags.Add(tag); } foreach (var t in tagsInBox) { TagInQuestion <TFQuestion> titf = new TagInQuestion <TFQuestion>(); titf.QuestionId = q.Id; titf.TagId = t; db.TagInTfQuestion.Add(titf); } //var to= new TFOption(); //to.IsTrue = ucTrueFalseAnswer1.isTrue; //to.Id = Guid.NewGuid().ToString(); //var fo = new TFOption(); //fo.IsTrue = ucTrueFalseAnswer1.isFalse; //fo.Id = Guid.NewGuid().ToString(); q.TrueOption = ucTrueFalseAnswer1.isTrue; q.FalseOption = ucTrueFalseAnswer1.isFalse; q.LessonName = comboLesson.Text.Trim(); q.CreatorUserId = Globals.CurrentUser.UserId; db.TFQuestions.Add(q); db.SaveChanges(); ucTrueFalseAnswer1.New(); ucTrueFalseAnswer1.isTrue = true; return(true); }
private bool RegisterShortAnswerQuestion(irQmDbContext db) { if (ucShortAnswer1.StringList.Count == 0) { lblMessage.Text = "جواب مشخص نشده است"; lblMessage.ForeColor = Color.Red; return(false); } var q = new ShortAnswer(); q.Id = Guid.NewGuid().ToString(); q.Face = rbFace.Rtf; q.RegisterTime = DateTime.UtcNow; var tagsInBox = tagsBox1.Tags; var tags = db.Tags.Select(t => t.Value).ToArray(); foreach (var tg in tagsInBox.Where(t => !(tags.Contains(t)))) { var tag = new Tag(); tag.Value = tg; db.Tags.Add(tag); } foreach (var t in tagsInBox) { TagInQuestion <ShortAnswer> tagInQuestion = new TagInQuestion <ShortAnswer>(); tagInQuestion.QuestionId = q.Id; tagInQuestion.TagId = t; db.TagInShortAnswer.Add(tagInQuestion); } q.Answer = ucShortAnswer1.StringList; q.LessonName = comboLesson.Text.Trim(); q.CreatorUserId = Globals.CurrentUser.UserId; db.ShortAnswerQustions.Add(q); db.SaveChanges(); ucShortAnswer1.New(new List <StringItem> { new StringItem(1), new StringItem(2), new StringItem(3) }); return(true); }
private bool RegisterPracticalQuestion(irQmDbContext db) { var list = ucPracticalAnswer1.CheckList; if (list.Count == 0) { lblMessage.Text = "چک لیست خالی است"; lblMessage.ForeColor = Color.Red; return(false); } var q = new Practical(); q.Id = Guid.NewGuid().ToString(); q.Face = rbFace.Rtf; q.RegisterTime = DateTime.UtcNow; var tagsInBox = tagsBox1.Tags; var tags = db.Tags.Select(t => t.Value).ToArray(); foreach (var tg in tagsInBox.Where(t => !(tags.Contains(t)))) { var tag = new Tag(); tag.Value = tg; db.Tags.Add(tag); } foreach (var t in tagsInBox) { TagInQuestion <Practical> tagInQuestion = new TagInQuestion <Practical>(); tagInQuestion.QuestionId = q.Id; tagInQuestion.TagId = t; db.TagInPractical.Add(tagInQuestion); } q.CheckList = list; q.LessonName = comboLesson.Text.Trim(); q.CreatorUserId = Globals.CurrentUser.UserId; db.PracticalQuestions.Add(q); db.SaveChanges(); ucPracticalAnswer1.New(new List <StringItem>() { new StringItem(1), new StringItem(2), new StringItem(3) }); return(true); }
public UserEditForm() { InitializeComponent(); comboRole.DataSource = Roles.Names; comboRole.DisplayMember = "Name"; comboRole.ValueMember = "Value"; using (irQmDbContext db = new irQmDbContext()) { var user = db.User.First(u => u.UserName == Globals.CurrentUser.UserName); txtusername.Text = user.UserName; txtEmail.Text = user.Email; txtName.Text = user.Name; txtFamily.Text = user.Family; comboRole.SelectedValue = user.Role; } }
private bool RegisterPuzzleQuestion(irQmDbContext db) { var pairs = ucPuzzleAnswer1.StringPairs; if (pairs.Count == 0) { lblMessage.Text = "جواب مشخص نشده است"; lblMessage.ForeColor = Color.Red; return(false); } var q = new Puzzle(); q.Id = Guid.NewGuid().ToString(); q.Face = rbFace.Rtf; q.RegisterTime = DateTime.UtcNow; var tagsInBox = tagsBox1.Tags; var tags = db.Tags.Select(t => t.Value).ToArray(); foreach (var tg in tagsInBox.Where(t => !(tags.Contains(t)))) { var tag = new Tag(); tag.Value = tg; db.Tags.Add(tag); } foreach (var t in tagsInBox) { TagInQuestion <Puzzle> tagInQuestion = new TagInQuestion <Puzzle>(); tagInQuestion.QuestionId = q.Id; tagInQuestion.TagId = t; db.TagInPuzzle.Add(tagInQuestion); } q.Pairs = pairs; q.LessonName = comboLesson.Text.Trim(); q.CreatorUserId = Globals.CurrentUser.UserId; db.PuzzleQuestions.Add(q); db.SaveChanges(); ucPuzzleAnswer1.New(); return(true); }
private void Btnsendmail_Click_1(object sender, EventArgs e) { using (irQmDbContext db = new irQmDbContext()) { user = db.User.FirstOrDefault(u => u.UserName == txtUsername.Text.Trim()); if (user == null) { lblMessage.ForeColor = Color.Red; lblMessage.Text = "این نام کاربری وجود ندارد"; return; } if (string.IsNullOrWhiteSpace(user.Email)) { lblMessage.ForeColor = Color.Red; lblMessage.Text = "برای این نام کاربری هیچ ایمیلی وجود ندارد"; return; } } SendWebMailMessage(); }
private void UserEditForm_Load(object sender, EventArgs e) { if (FrmLogin.userrole == "limited") { btnSelectUser.Visible = false; using (irQmDbContext db = new irQmDbContext()) { var user = db.User.FirstOrDefault(u => u.UserName == FrmLogin.uname); if (db.User.Any(u => u.UserName == FrmLogin.uname)) { txtusername.Text = FrmLogin.uname; } txtEmail.Text = user.Email; txtName.Text = user.Name; txtFamily.Text = user.Family; comboRole.SelectedValue = (Roles.RoleSNames)user.Role; } } else { btnSelectUser.Visible = true; } }
private void btnSelectUser_Click(object sender, EventArgs e) { List <string> users; using (irQmDbContext db = new irQmDbContext()) { users = db.User.Select(u => u.UserName).ToList(); } FrmItems frm = new FrmItems(users, new string[] { }); frm.ShowDialog(); if (frm.SelectedList.Count > 0) { txtusername.Text = frm.SelectedList[0]; using (irQmDbContext db = new irQmDbContext()) { var user = db.User.First(u => u.UserName == frm.SelectedList[0]); txtEmail.Text = user.Email; txtName.Text = user.Name; txtFamily.Text = user.Family; comboRole.SelectedValue = (Roles.RoleSNames)user.Role; } } }
private bool RegisterTrueOrFalse(irQmDbContext db) { var saveInDb = false; if (!ucTrueFalseAnswer1.isTrue && !ucTrueFalseAnswer1.isFalse) { lblMessage.Text = "گزینه درست مشخص نشده است"; lblMessage.ForeColor = Color.Red; return(false); } var q = (TFQuestion)Question; if (db.TFQuestions.Contains(q)) { saveInDb = true; db.TFQuestions.Remove(db.TFQuestions.First(qu => qu.Id == q.Id)); db.SaveChanges(); } q.Face = rbFace.Rtf; q.RegisterTime = DateTime.UtcNow; var tagsInBox = tagsBox1.Tags; var tags = db.Tags.Select(t => t.Value).ToArray(); //if (saveInDb) //{ // foreach (var tg in tagsInBox.Where(t => !(tags.Contains(t)))) // { // var tag = new Tag(); // tag.Value = tg; // db.Tags.Add(tag); // } // foreach (var t in tagsBox1.Tags) // { // TagInQuestion<TFQuestion> titf = new TagInQuestion<TFQuestion>(); // titf.QuestionId = q.Id; // titf.TagId = t; // db.TagInTfQuestion.Add(titf); // } //} //else { var qtags = new List <TagInQuestion <TFQuestion> >(); foreach (var t in tagsInBox) { TagInQuestion <TFQuestion> tagInQuestion = new TagInQuestion <TFQuestion>(); tagInQuestion.QuestionId = q.Id; tagInQuestion.TagId = t; qtags.Add(tagInQuestion); } q.Tags = qtags; } q.EditTime = DateTime.UtcNow; //var to= new TFOption(); //to.IsTrue = ucTrueFalseAnswer1.isTrue; //to.Id = Guid.NewGuid().ToString(); //var fo = new TFOption(); //fo.IsTrue = ucTrueFalseAnswer1.isFalse; //fo.Id = Guid.NewGuid().ToString(); q.TrueOption = ucTrueFalseAnswer1.isTrue; q.FalseOption = ucTrueFalseAnswer1.isFalse; q.LessonName = comboLesson.Text.Trim(); q.CreatorUserId = Globals.CurrentUser.UserId; if (saveInDb) { foreach (var tg in tagsInBox.Where(t => !(tags.Contains(t)))) { var tag = new Tag(); tag.Value = tg; db.Tags.Add(tag); } db.TFQuestions.Add(q); db.SaveChanges(); } return(true); }
private bool RegisterMultiChoices(irQmDbContext db) { var saveInDb = false; if (ucMultiOption1.Options.Count(o => o.IsTrue) < 1) { lblMessage.Text = "گزینه یا گزینه های درست مشخص نشده است"; lblMessage.ForeColor = Color.Red; return(false); } var q = (MultiChoices)Question; if (db.MultiChoicesQuestions.Contains(q)) { saveInDb = true; db.MultiChoicesQuestions.Remove(db.MultiChoicesQuestions.First(qu => qu.Id == q.Id)); db.SaveChanges(); } q.Face = rbFace.Rtf; q.RegisterTime = DateTime.UtcNow; var tagsInBox = tagsBox1.Tags; var tags = db.Tags.Select(t => t.Value).ToArray(); //if (saveInDb) //{ // foreach (var tg in tagsInBox.Where(t => !(tags.Contains(t)))) // { // var tag = new Tag(); // tag.Value = tg; // db.Tags.Add(tag); // } // foreach (var t in tagsBox1.Tags) // { // TagInQuestion<MultiChoices> tim = new TagInQuestion<MultiChoices>(); // tim.QuestionId = q.Id; // tim.TagId = t; // db.TagInMultichoices.Add(tim); // } //} //else { var qtags = new List <TagInQuestion <MultiChoices> >(); foreach (var t in tagsInBox) { TagInQuestion <MultiChoices> tagInQuestion = new TagInQuestion <MultiChoices>(); tagInQuestion.QuestionId = q.Id; tagInQuestion.TagId = t; qtags.Add(tagInQuestion); } q.Tags = qtags; } q.EditTime = DateTime.UtcNow; var options = ucMultiOption1.Options; foreach (Option o in options) { o.MultiChoicesId = q.Id; db.Option.Add(o); } q.LessonName = comboLesson.Text.Trim(); q.CreatorUserId = BaseCodes.Utilities.Globals.CurrentUser.UserId; if (saveInDb) { foreach (var tg in tagsInBox.Where(t => !(tags.Contains(t)))) { var tag = new Tag(); tag.Value = tg; db.Tags.Add(tag); } db.MultiChoicesQuestions.Add(q); db.SaveChanges(); } return(true); }
private bool RegisterLongAnswerQuestion(irQmDbContext db) { var saveInDb = false; if (string.IsNullOrEmpty(ucLongAnswer1.Answer)) { lblMessage.Text = "جواب مشخص نشده است"; lblMessage.ForeColor = Color.Red; return(false); } var q = (LongAnswer)Question; if (db.LongAnswerQuestions.Contains(q)) { saveInDb = true; db.LongAnswerQuestions.Remove(db.LongAnswerQuestions.First(qu => qu.Id == q.Id)); db.SaveChanges(); } q.Face = rbFace.Rtf; q.RegisterTime = DateTime.UtcNow; var tagsInBox = tagsBox1.Tags; var tags = db.Tags.Select(t => t.Value).ToArray(); //if (saveInDb) //{ // foreach (var tg in tagsInBox.Where(t => !(tags.Contains(t)))) // { // var tag = new Tag(); // tag.Value = tg; // db.Tags.Add(tag); // } // foreach (var t in tagsBox1.Tags) // { // TagInQuestion<LongAnswer> tagInQuestion = new TagInQuestion<LongAnswer>(); // tagInQuestion.QuestionId = q.Id; // tagInQuestion.TagId = t; // db.TagInLongAnswer.Add(tagInQuestion); // } //} //else { var qtags = new List <TagInQuestion <LongAnswer> >(); foreach (var t in tagsInBox) { TagInQuestion <LongAnswer> tagInQuestion = new TagInQuestion <LongAnswer>(); tagInQuestion.QuestionId = q.Id; tagInQuestion.TagId = t; qtags.Add(tagInQuestion); } q.Tags = qtags; } q.EditTime = DateTime.UtcNow; q.Answer = ucLongAnswer1.Answer; q.LessonName = comboLesson.Text.Trim(); q.CreatorUserId = Globals.CurrentUser.UserId; if (saveInDb) { foreach (var tg in tagsInBox.Where(t => !(tags.Contains(t)))) { var tag = new Tag(); tag.Value = tg; db.Tags.Add(tag); } db.LongAnswerQuestions.Add(q); db.SaveChanges(); } return(true); }
private bool RegisterPracticalQuestion(irQmDbContext db) { var saveInDb = false; var list = ucPracticalAnswer1.CheckList; if (list.Count == 0) { lblMessage.Text = "چک لیست خالی است"; lblMessage.ForeColor = Color.Red; return(false); } var q = (Practical)Question; if (db.PracticalQuestions.Contains(q)) { saveInDb = true; db.PracticalQuestions.Remove(db.PracticalQuestions.First(qu => qu.Id == q.Id)); db.SaveChanges(); } q.Face = rbFace.Rtf; q.RegisterTime = DateTime.UtcNow; var tagsInBox = tagsBox1.Tags; var tags = db.Tags.Select(t => t.Value).ToArray(); //if (saveInDb) //{ // foreach (var tg in tagsInBox.Where(t => !(tags.Contains(t)))) // { // var tag = new Tag(); // tag.Value = tg; // db.Tags.Add(tag); // } // foreach (var t in tagsBox1.Tags) // { // TagInQuestion<Practical> tagInQuestion = new TagInQuestion<Practical>(); // tagInQuestion.QuestionId = q.Id; // tagInQuestion.TagId = t; // db.TagInPractical.Add(tagInQuestion); // } //} //else { var qtags = new List <TagInQuestion <Practical> >(); foreach (var t in tagsInBox) { TagInQuestion <Practical> tagInQuestion = new TagInQuestion <Practical>(); tagInQuestion.QuestionId = q.Id; tagInQuestion.TagId = t; qtags.Add(tagInQuestion); } q.Tags = qtags; } q.EditTime = DateTime.UtcNow; q.CheckList = list; q.LessonName = comboLesson.Text.Trim(); q.CreatorUserId = Globals.CurrentUser.UserId; if (saveInDb) { foreach (var tg in tagsInBox.Where(t => !(tags.Contains(t)))) { var tag = new Tag(); tag.Value = tg; db.Tags.Add(tag); } db.PracticalQuestions.Add(q); db.SaveChanges(); } return(true); }
public void search() { if (toDate != null) { toDate.Value.AddHours(-1 * toDate.Value.Hour).AddHours(24); } System.Diagnostics.Debug.WriteLine(PersianDateConverter.ToMiladi(fdpTo.SelectedDateTime).Year); using (var db = new irQmDbContext()) { IQuestion[] questions = null; FlowLayoutPanel target = null; switch (tabControl1.SelectedIndex) { case 0: questions = db.MultiChoicesQuestions.Where(q => (string.IsNullOrWhiteSpace(lessonName) ? true : q.LessonName == lessonName) && (fromDate != null ? q.RegisterTime >= fromDate : true) && (toDate != null ? q.RegisterTime <= toDate : true) && tags.All(tg => db.TagInMultichoices.Any(t => t.QuestionId == q.Id && t.Tag.Value == tg)) && richContains(q.Face, searchExpr)).Include(q => q.Options).Include(q => q.Tags).ToArray(); target = flpMultiOptionsQuestions; break; case 1: questions = db.TFQuestions.Where(q => (string.IsNullOrWhiteSpace(lessonName) ? true : q.LessonName == lessonName) && (fromDate != null ? q.RegisterTime >= fromDate : true) && (toDate != null ? q.RegisterTime <= toDate : true) && tags.All(tg => db.TagInTfQuestion.Any(t => t.QuestionId == q.Id && t.Tag.Value == tg)) && richContains(q.Face, searchExpr)).Include(q => q.Tags).ToArray(); target = flpTFQuestions; break; case 2: questions = db.PuzzleQuestions.Where(q => (string.IsNullOrWhiteSpace(lessonName) ? true : q.LessonName == lessonName) && (fromDate != null ? q.RegisterTime >= fromDate : true) && (toDate != null ? q.RegisterTime <= toDate : true) && tags.All(tg => db.TagInPuzzle.Any(t => t.QuestionId == q.Id && t.Tag.Value == tg)) && richContains(q.Face, searchExpr)).Include(q => q.Pairs).Include(q => q.Tags).ToArray(); target = flpPuzzleQuestions; break; case 3: questions = db.ShortAnswerQustions.Where(q => (string.IsNullOrWhiteSpace(lessonName) ? true : q.LessonName == lessonName) && (fromDate != null ? q.RegisterTime >= fromDate : true) && (toDate != null ? q.RegisterTime <= toDate : true) && tags.All(tg => db.TagInShortAnswer.Any(t => t.QuestionId == q.Id && t.Tag.Value == tg)) && richContains(q.Face, searchExpr)).Include(q => q.Answer).Include(q => q.Tags).ToArray(); target = flpShortQuestions; break; case 4: questions = db.LongAnswerQuestions.Where(q => (string.IsNullOrWhiteSpace(lessonName) ? true : q.LessonName == lessonName) && (fromDate != null ? q.RegisterTime >= fromDate : true) && (toDate != null ? q.RegisterTime <= toDate : true) && tags.All(tg => db.TagInLongAnswer.Any(t => t.QuestionId == q.Id && t.Tag.Value == tg)) && richContains(q.Face, searchExpr)).Include(q => q.Tags).ToArray(); target = flpLongQuestions; break; case 5: questions = db.PracticalQuestions.Where(q => (string.IsNullOrWhiteSpace(lessonName) ? true : q.LessonName == lessonName) && (fromDate != null ? q.RegisterTime >= fromDate : true) && (toDate != null ? q.RegisterTime <= toDate : true) && tags.All(tg => db.TagInPractical.Any(t => t.QuestionId == q.Id && t.Tag.Value == tg)) && richContains(q.Face, searchExpr)).Include(q => q.Tags).Include(q => q.CheckList).ToArray(); target = flpPracticalQuestions; break; case 6: return; } int i = 1; target.Controls.Clear(); foreach (var q in questions.OrderBy(q => q.Face)) { var qitem = new UCQuestionListItem(q, q.RegisterTime.ToLocalTime().ToPrettyTime(), i); qitem.Width = multiTabPage.Width - 50; qitem.RightToLeft = RightToLeft.Yes; qitem.Anchor = AnchorStyles.Right | AnchorStyles.Left; qitem.Resize += (s, ev) => { qitem.MaximumSize = new Size(Width - 50, 0); }; qitem.Removed += Qitem_Removed; qitem.CheckedChange += Qitem_CheckedChange; qitem.Name = q.Id; if (selectedQuestions.Contains(q)) { qitem.Checked = true; } target.Controls.Add(qitem); qitem.QuestionEdited += Qitem_QuestionEdited; list.Add(qitem); i++; } } }
private void btnSave_Click(object sender, EventArgs e) { //try { bool success = false; using (irQmDbContext db = new irQmDbContext()) { if (string.IsNullOrWhiteSpace(rbFace.Text)) { lblMessage.Text = "صورت سوال خالی است"; lblMessage.ForeColor = Color.Red; return; } if (comboLesson.IsNew()) { if (string.IsNullOrWhiteSpace(comboLesson.Text)) { lblMessage.Text = "درس وارد نشده است"; lblMessage.ForeColor = Color.Red; return; } var l = new Lesson(); l.LessonName = comboLesson.Text.Trim(); db.Lessons.Add(l); comboLesson.LoadItems(); } switch (comboQuestionType.SelectedValue) { case Globals.QuestionTypes.QType.multiOption: success = RegisterMultiChoices(db); break; case Globals.QuestionTypes.QType.trueOrFalse: success = RegisterTrueOrFalse(db); break; case Globals.QuestionTypes.QType.longAnswer: success = RegisterLongAnswerQuestion(db); break; case Globals.QuestionTypes.QType.puzzle: success = RegisterPuzzleQuestion(db); break; case Globals.QuestionTypes.QType.practical: success = RegisterPracticalQuestion(db); break; case Globals.QuestionTypes.QType.shortAnswer: success = RegisterShortAnswerQuestion(db); break; } } if (success) { lblMessage.Text = "پرسش ثبت شد"; lblMessage.ForeColor = Color.Green; Saved?.Invoke(this, null); } } //catch(Exception x) //{ // lblMessage.Text = "مشکلی در عملیات پیش آمده است"+x.ToString(); // lblMessage.ForeColor = Color.Red; //} }