public ActionResult <BusDriver> Add(BusDriverDTO busDriverDTO) { var existingBusDriver = _busDriverRepository.GetBusDriverByDayIdBusColorAndTimeOfDay( busDriverDTO.DayId, busDriverDTO.BusColor, busDriverDTO.TimeOfDay); if (existingBusDriver != null) { return(BadRequest("Er is al een chauffeur die op die dag rijdt!")); } Day day = _customDayRepository.GetById(busDriverDTO.DayId); if (day == null) { day = _dayRepository.GetById(busDriverDTO.DayId); if (day == null) { return(NotFound()); } } var driver = _driverRepository.GetById(busDriverDTO.DriverId); if (driver == null) { return(NotFound()); } try { BusDriver newBusDriver = new BusDriver(day, driver, busDriverDTO.TimeOfDay, busDriverDTO.BusColor); _busDriverRepository.Add(newBusDriver); _busDriverRepository.SaveChanges(); return(Ok(newBusDriver)); } catch (Exception ex) { return(BadRequest(ex.Message)); } }