如何使用带有DeleteAsync的httpClient传递复杂类型?

时间:2013-08-08 19:29:30

标签: c# asp.net-web-api http-delete

我正在尝试使用HTTPClient删除Web API Web服务。

如果我只是在uri中传递我需要删除的id,这很简单:

deleteAsync("http://localhost/myService/main/deleteItem?id=1234567")

但是如果我想在删除时传回一个复杂类型,我可以将该对象作为json传回请求正文中,并使用[FromBody]从服务中访问它吗?我将如何完成这样的事情?

1 个答案:

答案 0 :(得分:1)

您可以使用httpPost将复杂对象发布到删除方法。

E.g。

[System.Web.Http.AcceptVerbs("Post")]
public HttpResponseMessage DeleteComplexObject(Models.ComplexObject deleteme)
{
    this.ComplexObjectService.Delete(deleteme);
    var response = Request.CreateResponse(HttpStatusCode.Accepted);

    return response;
}

这里使用模型绑定将json对象自动转换为ComplexObject,因此您不需要使用[FromBody]