public async Task <IEnumerable <StudentExam> > SearchStudentExam(StudentExamSearchRequest request)
        {
            var schoolYearIdParameter = new SqlParameter
            {
                ParameterName = "schoolYearId",
                Direction     = ParameterDirection.Input,
                SqlDbType     = SqlDbType.BigInt,
                Value         = request.SchoolYearId
            };

            var classroomIdParameter = new SqlParameter
            {
                ParameterName = "classroomId",
                Direction     = ParameterDirection.Input,
                SqlDbType     = SqlDbType.BigInt,
                Value         = request.ClassroomId
            };

            var examIdParameter = new SqlParameter
            {
                ParameterName = "examId",
                Direction     = ParameterDirection.Input,
                SqlDbType     = SqlDbType.BigInt,
                Value         = request.ExamId
            };

            return(await _repository.ExecWithStoreProcedure("dbo.sp_SearchStudentExam @schoolYearId, @classroomId, @examId", schoolYearIdParameter, classroomIdParameter, examIdParameter));
        }
        public async Task <IHttpActionResult> StudentExamList([FromBody] StudentExamSearchRequest request)
        {
            try
            {
                var list = await _service.SearchStudentExam(request);

                await _service.CommitAsync();

                return(Ok(new { List = list }));
            }
            catch (Exception ex)
            {
                await _service.RollbackAsync();

                return(BadRequest(GetError(ex)));
            }
        }