public ModifyInstructorAndCourses.Response ModifyInstructorAndCourses(ModifyInstructorAndCourses.Request request) { var retVal = Logger.TraceCall(() => { var requestHandler = new ModifyInstructorAndCoursesHandler(_Repository); var response = requestHandler.Handle(request); return response; }); return retVal; }
public ModifyInstructorAndCourses.Response Handle(ModifyInstructorAndCourses.Request request) { var validationDetails = Validator.ValidateRequest(request); if (validationDetails.HasValidationIssues) return new ModifyInstructorAndCourses.Response(validationDetails); var commandModel = request.CommandModel; var instructor = _Repository.GetEntity<Instructor>( p => p.ID == commandModel.InstructorId, new EagerLoadingQueryStrategy<Instructor>( p => p.Courses, p => p.OfficeAssignment)); var container = instructor.Modify(_Repository, request.CommandModel); validationDetails = _Repository.Save(container); return new ModifyInstructorAndCourses.Response(validationDetails); }