public void Delete(IDailyWorkTimeWeekPlan workTimePlan) { if (workTimePlan == null) throw new ArgumentNullException(nameof(workTimePlan)); if (!_timetableOfPlannedWorktime.Any(x => ReferenceEquals(x.Value, workTimePlan))) throw new ArgumentOutOfRangeException("this workplan is not part of the repository, therefore cant delete it"); var kvpOfWorkTimePlan = _timetableOfPlannedWorktime.FirstOrDefault(x => ReferenceEquals(x.Value, workTimePlan)); _timetableOfPlannedWorktime.Remove(kvpOfWorkTimePlan.Key); }
public void AddOrUpdateWorkTimePlanBeginningAt(IDate startDate, IDailyWorkTimeWeekPlan workTimePlan) { if (startDate == null) throw new ArgumentNullException(nameof(startDate)); if (workTimePlan == null) throw new ArgumentNullException(nameof(workTimePlan)); _timetableOfPlannedWorktime[startDate] = workTimePlan; }