Пример #1
0
        public async Task <ObjPropertiesDto> Update(string id, ObjPropertiesDto value)
        {
            var content  = CreateContent(value);
            var response = await _http.PutAsync(new Uri(ROUTE + id, UriKind.Relative), content);

            if (!response.IsSuccessStatusCode)
            {
                return(null);
            }

            var json = await response.Content.ReadAsStringAsync();

            return(_dataParser.Deserialize <ObjPropertiesDto>(json));
        }
Пример #2
0
        public async Task <IActionResult> Post([FromBody] ObjPropertiesDto dto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var property = _mapperService.Map <ObjProperties>(dto);
            await _repository.Create(property);


            var url     = _urlHelper.RouteUrl(GET_OBJ_PROPERTIES_ROUTE, new { id = property.PropertyId });
            var created = _mapperService.Map <ObjPropertiesDto>(property);

            return(Created(url, created));
        }
Пример #3
0
        public async Task <IActionResult> Put(Guid id, [FromBody] ObjPropertiesDto dto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var property = await _repository.GetById(dto.PropertyId);

            if (property == null)
            {
                return(NotFound());
            }

            property = _mapperService.Update(dto, property);
            await _repository.Update(property);

            var url      = _urlHelper.RouteUrl(GET_OBJ_PROPERTIES_ROUTE, new { id = property.PropertyId });
            var accepted = _mapperService.Map <ObjPropertiesDto>(property);

            return(Accepted(new Uri(url, UriKind.Relative), accepted));
        }
Пример #4
0
        private HttpContent CreateContent(ObjPropertiesDto dto)
        {
            var json = _dataParser.Serialize(dto);

            return(new StringContent(json, Encoding.UTF8, "application/json"));
        }