Saya telah mengembangkan dengan WebApi dan telah pindah ke WebApi2 di mana Microsoft telah memperkenalkan IHttpActionResultAntarmuka baru yang tampaknya direkomendasikan untuk digunakan daripada mengembalikan a HttpResponseMessage. Saya bingung tentang kelebihan dari Antarmuka baru ini. Tampaknya terutama hanya menyediakan cara yang sedikit lebih mudah untuk membuat HttpResponseMessage.
Saya akan mengajukan argumen bahwa ini adalah "abstraksi demi abstraksi". Apakah saya melewatkan sesuatu? Apa keuntungan dunia nyata yang saya dapatkan dari menggunakan Antarmuka baru ini selain mungkin menghemat satu baris kode?
Cara lama (WebApi):
public HttpResponseMessage Delete(int id)
{
var status = _Repository.DeleteCustomer(id);
if (status)
{
return new HttpResponseMessage(HttpStatusCode.OK);
}
else
{
throw new HttpResponseException(HttpStatusCode.NotFound);
}
}
Cara Baru (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();
}
}
HttpResponseMessagesaya mendapat respons kembali di 9545 ms . * MenggunakanIHttpActionResultI mendapat respons yang sama kembali dalam 294 ms .