ฉันได้รับการพัฒนากับ WebAPI และได้ย้ายไป WebApi2 ที่ไมโครซอฟท์ได้แนะนำใหม่อินเตอร์เฟซที่ดูเหมือนว่าจะแนะนำให้นำมาใช้มากกว่ากลับIHttpActionResult
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 มิลลิวินาที * ใช้IHttpActionResult
ผมได้กลับมาตอบสนองเดียวกันใน294 มิลลิวินาที