我一直在使用WebApi进行开发,然后转到了WebApi2,Microsoft在其中引入了一个新的IHttpActionResult
接口,似乎建议将其用于返回a的接口HttpResponseMessage
。我对这个新界面的优势感到困惑。它似乎主要只是提供了一种稍微容易些的创建方式HttpResponseMessage
。
我认为这是“抽象的抽象”。我想念什么吗?除了节省一行代码之外,使用此新接口还能给我带来什么现实世界的好处?
旧方法(WebApi):
public HttpResponseMessage Delete(int id)
{
var status = _Repository.DeleteCustomer(id);
if (status)
{
return new HttpResponseMessage(HttpStatusCode.OK);
}
else
{
throw new HttpResponseException(HttpStatusCode.NotFound);
}
}
新方法(WebApi2):
public IHttpActionResult Delete(int id)
{
var status = _Repository.DeleteCustomer(id);
if (status)
{
//return new HttpResponseMessage(HttpStatusCode.OK);
return Ok();
}
else
{
//throw new HttpResponseException(HttpStatusCode.NotFound);
return NotFound();
}
}
HttpResponseMessage
我在9545 ms内返回了响应。*使用IHttpActionResult
我在同一个响应返回294毫秒。