コード例 #1
0
        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);
        }
コード例 #2
0
        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));
        }