WebApi 2编辑操作的POST结果

时间:2017-01-23 09:55:08

标签: rest asp.net-web-api asp.net-web-api2 hateoas

在我的WebApi 2服务中,我有一个允许编辑成员数据的控制器。

    [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();
    }

根据HATEOAS,我应该返回我发布到的资源的URI。如果一切顺利,我认为正确的结果是可以的。但它不允许在其中包含URI。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

您需要做的就是:

return Ok( new { locationHeader });