RequestはApiControllerクラスのパブリックプロパティであり、そのコントローラーのすべてのAPIアクションで使用できる必要があります。
public abstract class ApiController
{
...
public HttpRequestMessage Request { get; set; }
}
これが私のために働く小さなコードサンプルです:
using System.Net;
using System.Net.Http;
using System.Web.Http;
public class MyFirstApiController : ApiController
{
// GET
public HttpResponseMessage Get(int id)
{
return Request.CreateErrorResponse(HttpStatusCode.ExpectationFailed, "Some message here");
}
}
興味深いことに、System.Net.Httpを使用して削除した場合。ステートメント、RequestにはCreateErrorResponse()メソッドがなくなりました。