protected void Students_RowUpdating(object sender, GridViewUpdateEventArgs e) { GridViewRow row = (GridViewRow)this.Students.Rows[e.RowIndex]; TextBox idContainer = (TextBox)row.Cells[0].Controls[0]; TextBox markValue = (TextBox)row.Cells[4].Controls[0]; double value; if (double.TryParse(markValue.Text, out value)) { var markDTO = new AddMarkDTO() { StudentId = idContainer.Text, Value = value }; var teacherId = Context.User.Identity.GetUserId(); var ev = new AddMarksEventArgs(teacherId, markDTO); this.InsertMarks?.Invoke(sender, ev); if (this.Model.IsSuccess) { this.Message.ShowSuccess("Mark added."); this.Classes_SelectedIndexChanged(sender, e); } else { this.Message.ShowError(this.Model.ErrorMessage); } } }
private void View_InsertMarks(object sender, AddMarksEventArgs e) { var teacher = this.teacherService.FindById(e.TeacherId); var subject = teacher.Subject; try { var markToAdd = markFactory.CreateMark(e.Mark.StudentId, subject, e.Mark.Value); this.markService.Add(markToAdd); } catch (ArgumentException ex) { this.View.Model.ErrorMessage = ex.Message; this.View.Model.IsSuccess = false; return; } try { this.markService.Save(); } catch (Exception) { this.View.Model.ErrorMessage = "Something`s wrong!"; this.View.Model.IsSuccess = false; return; } this.View.Model.IsSuccess = true; }