public async Task <ZoneDto> AddZone(ZoneForCreationDto zone) { var json = JsonSerializer.Serialize(zone); var zoneJson = new StringContent(json, Encoding.UTF8, "application/json"); var response = await _httpClient.PostAsync("api/zones", zoneJson); if (response.IsSuccessStatusCode) { return(await JsonSerializer.DeserializeAsync <ZoneDto>(await response.Content.ReadAsStreamAsync())); } return(null); }
public ActionResult <ZoneDto> CreateZone(ZoneForCreationDto zone) { if (zone.Name == zone.Description) { ModelState.AddModelError("Description", "Description must be different from Name."); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var zoneEntity = _mapper.Map <Entities.Zone>(zone); _croudSeekRepository.AddZone(zoneEntity); _croudSeekRepository.Save(); var zoneToReturn = _mapper.Map <ZoneDto>(zoneEntity); return(CreatedAtRoute("GetZone", new { zoneId = zoneToReturn.Id }, zoneToReturn)); }