public async Task <IActionResult> Create([FromBody] WeaponResource resource) { if (resource == null) { throw new BadArguementException("Request body is null."); } if (!ModelState.IsValid) { throw new InvalidModelException(ModelState.ValidationState.ToString()); } WeaponResource result; result = await _service.Create(resource); return(CreatedAtRoute("GetWeapon", new { id = result.ID }, result)); }