Область действия try
завершается с ошибкой в этом бите кода. Я не могу записать данные в базу данных. Всякий раз, когда я пытаюсь запустить код, я получаю перехват, который возвращает код состояния 500.
Я пытался изменить входные данные, но мне это не удалось.
Контроллер:
[HttpPost("Floors")]
public IActionResult CreateFloor([FromBody]CreateFloorRequest createFloorRequest)
{
try
{
if (createFloorRequest == null)
{
return NotFound();
}
return CreatedAtRoute("FloorById", _repository.Floor.CreateFloor(createFloorRequest),
createFloorRequest);
}
catch (Exception e)
{
return StatusCode(500, e.InnerException);
}
}
Репозиторий:
public int CreateFloor(CreateFloorRequest createFloorRequest)
{
Floor floor = new Floor()
{
LocationId = createFloorRequest.LocationId,
Name = createFloorRequest.Name,
Picture = createFloorRequest.Picture
};
_context.Floors.Add(floor);
_context.SaveChanges();
return floor.Id;
}
Редактировать: после изменения моего улова для отображения e.InnerException
я получил следующую ошибку: "Message": "The INSERT statement conflicted with the FOREIGN KEY constraint \"FK_Floors_Locations_LocationId\". The conflict occurred in database \"GalleriesDB\", table \"dbo.Locations\", column 'Id'.\r\nThe statement has been terminated."
.