public async Task <ActionResult <FiscalYearVM> > CreateFiscalYear(FiscalYearVM fiscalyearVM) { try { if (fiscalyearVM == null) { return(BadRequest()); } // Add custom model validation error FiscalYear fiscalyear = await fiscalyearRepository.GetFiscalYearByname(fiscalyearVM.FiscalYear); if (fiscalyear != null) { ModelState.AddModelError("Name", $"FiscalYear name: {fiscalyearVM.FiscalYear.Name} already in use"); return(BadRequest(ModelState)); } await fiscalyearRepository.CreateFiscalYear(fiscalyearVM); return(CreatedAtAction(nameof(GetFiscalYear), new { id = fiscalyearVM.FiscalYear.Id }, fiscalyearVM)); } catch (DbUpdateException Ex) { return(StatusCode(StatusCodes.Status500InternalServerError, Ex.InnerException.Message)); } }