public IResult <StudentDetails> Enrol(Guid studentId, Guid courseId)
        {
            if (courseId == Guid.Empty)
            {
                return(new Result <StudentDetails>().AddErrorMessage("Course id is empty"));
            }
            if (studentId == Guid.Empty)
            {
                return(new Result <StudentDetails>().AddErrorMessage("Student id is empty"));
            }
            var courseResult = _coursesRepository.Get(courseId);

            if (!courseResult.Succeed)
            {
                return(new Result <StudentDetails> ().AddErrorMessage("Course not found"));
            }
            var studentResult = _repository.Get(studentId);

            if (!studentResult.Succeed)
            {
                return(new Result <StudentDetails>().AddErrorMessage("Student not found"));
            }
            courseResult.Return.AddStudent(studentResult.Return);
            _coursesRepository.UnitOfWork.SaveChanges();

            return(new Result <StudentDetails> {
                Return = ToDto(studentResult.Return)
            });
        }
        public CourseDetails Get(Guid id)
        {
            var result = _coursesRepository.Get(id);

            if (!result.Succeed)
            {
                return(null);
            }
            var course = result.Return;

            return(new CourseDetails(course));
        }