Rest WebApi 2编辑操作的POST结果

Rest WebApi 2编辑操作的POST结果,rest,asp.net-web-api,asp.net-web-api2,hateoas,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(

在我的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();
    }
[授权]
[HttpPost]
[路线(“成员/成员”)]
公共异步任务EditMember([FromBody]成员EditdMember)
{
var member=wait _membersResposition.GetMembersById(editedMember.MemberId);
if(成员==null)
{
返回NotFound();
}
member=wait_members position.EditMember(EditMember);
urilocationheader=newuri(Url.Link(“MemberById”,new{id=editedMember.MemberId}));
返回Ok();
}
根据HATEOAS,我应该返回我发布到的资源的URI。如果一切顺利,我认为正确的结果是可以的。但它不允许在其中包含URI


我做错了什么?

您需要做的就是:


返回Ok(新的{locationHeader})

您只需执行以下操作:

返回Ok(新的{locationHeader})