public ActionResult Create(VacationManagement.VacationRequest vacationRequest) { String currentUserId = User.Identity.GetUserId(); if (ModelState.IsValid) { String statusMessage; bool result = false; if (vacationRequest.VacationEndDate >= vacationRequest.VacationStartDate) { if (DateTime.Now.Year == vacationRequest.getVacationStartDate().Year && DateTime.Now.Year == vacationRequest.getVacationEndDate().Year) { //Constructor VacationRequest VacationManagement.VacationRequest vr = new VacationManagement.VacationRequest(currentUserId, vacationRequest.VacationStartDate, vacationRequest.VacationEndDate); //start validate then insert into db result = vr.InsertIntoDB(); if (result) { TempData["success"] = "Der Urlaubsantrag wurde erfolgreich angelegt."; } } else { ErrorState.ErrorStateInstance.setError(ErrorState.VACATION_REQUEST_NOT_IN_CURRENT_YEAR); } } else { ErrorState.ErrorStateInstance.setError(ErrorState.END_DATE_BEFORE_START_DATE); } int lastError = ErrorState.ErrorStateInstance.getLastError(); if (lastError != ErrorState.OK ) { TempData["error"] = "Leider konnte ihr Urlaubsantrag nicht erstellt werden. " + ErrorState.ErrorStateInstance.getErrorMessage(lastError); } } return RedirectToAction("Index", GetVacationRequests()); }