Asp.net

返回項目,Json(item) 和 Ok(item) 之間的 IHttpActionResult 區別

  • July 20, 2016

在 ASP.NET WebApi 2 中,以下內容有什麼區別:

public <IHttpActionResult> GetItem(Guid id)
{
   // ... code ..., Item result = ....
   return result;
}

public <IHttpActionResult> GetItem(Guid id)
{
   // ... code ..., Item result = ....
   return Json(result);
}


public <IHttpActionResult> GetItem(Guid id)
{
   // ... code ..., Item result = ....
   return Ok(result);
}

此程式碼返回result不會編譯,因為result沒有實現IHttpActionResult……

public <IHttpActionResult> GetItem(Guid id)
{
   // ... code ..., Item result = ....
   return result;
}

返回Json()總是返回 HTTP 200 和 JSON 格式的結果,無論傳入請求的 Accept 標頭中的格式是什麼。

public <IHttpActionResult> GetItem(Guid id)
{
   // ... code ..., Item result = ....
   return Json(result);
}

返回Ok()返回 HTTP 200,但結果將根據 Accept 請求標頭中指定的內容進行格式化。

public <IHttpActionResult> GetItem(Guid id)
{
   // ... code ..., Item result = ....
   return Ok(result);
}

引用自:https://stackoverflow.com/questions/23188206