public async Task <IActionResult> PutFactory([FromRoute] int id, [FromBody] FactoryDTO factoryDTO) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != factoryDTO.FactoryId) { return(BadRequest()); } var f = await factoryRepository.Edit(id, factoryDTO); if (f == null) { return(BadRequest()); } FactoryDTO dto = new FactoryDTO(); dto.FactoryId = f.FactoryId; dto.Description = f.Description; CityDTO cityDTO = new CityDTO(); City c = f.City; cityDTO.CityId = c.CityId; cityDTO.Name = c.Name; cityDTO.Latitude = c.Latitude; cityDTO.Longitude = c.Longitude; dto.City = cityDTO; return(Ok(dto)); }