public async Task <object> Delete(ScoreById request)
        {
            var response = new BaseResponse();
            Expression <Func <Score, bool> > keySelector = x => x.StudentId == request.StudentId && x.SubjectId == request.SubjectId;
            var result = await _scoreService.Delete(keySelector : keySelector);

            response.Success    = true;
            response.Message    = $"Delete score with SubjectId {request.SubjectId} and StudentId {request.StudentId} success";
            response.StatusCode = (int)HttpStatusCode.OK;
            response.Results    = result.ConvertTo <ScoreDto>();

            return(response);
        }
        public async Task <object> Get(ScoreById request)
        {
            var response = new BaseResponse();
            Expression <Func <Score, bool> > keySelector = x => x.StudentId == request.StudentId && x.SubjectId == request.SubjectId;

            var entity = await _scoreService.GetById(keySelector : keySelector);

            var dto = entity.ConvertTo <ScoreDto>();

            response.Success    = true;
            response.StatusCode = (int)HttpStatusCode.OK;
            response.Results    = dto;

            return(response);
        }