In my WebApi 2 service i have a controller which allows to edit member data.
[Authorize]
[HttpPost]
[Route("Members/Member")]
public async Task<IHttpActionResult> EditMember([FromBody] Member editedMember)
{
var member = await _membersRepository.GetMembersById(editedMember.MemberId);
if (member == null)
{
return NotFound();
}
member = await _membersRepository.EditMember(editedMember);
Uri locationHeader = new Uri(Url.Link("MemberById", new { id = editedMember.MemberId }));
return Ok();
}
According to HATEOAS i should return an URI of the resource i POSTed to. I would think that the correct result if everything went well is OK. But it does not allow to include the URI in it.
What am I doing wrong?
All you need to do is this:
return Ok( new { locationHeader });