Example #1
0
        public async Task <IActionResult> CreateAsync([FromBody] ResourceRequest <BuildingRequestDto> resource)
        {
            if (resource.Data.Type != "buildings")
            {
                return(StatusCode(409));
            }

            var building = _mapper.Map <Building>(resource.Data);

            building = await _buildingManager.CreateAsync(building);

            var buildingDto = _mapper.Map <BuildingDto>(building);
            var links       = _jsonApiBuilder.BuildNewSingleResourceLinks(HttpContext.Request.Path, buildingDto.Id);

            return(Created(links.Self, new ResourceResponse()
            {
                Links = links, Data = buildingDto
            }));
        }