像@ DavB.cs誰嵌套像ApiControllers人們另一種解決方案:
public class ParentController : ApiController
{
public IHttpActionResult Foo()
{
ChildRepository.Foo();
return Ok(...);
}
}
public class ChildRepository : ApiController
{
public HttpResponseMessage Foo()
{
// Do something
return Request.CreateResponse(...);
}
}
是簡單地只是請求通過從ParentController這樣:
public class ParentController : ApiController
{
public IHttpActionResult Foo()
{
ChildRepository.Foo(Request);
return Ok(...);
}
}
public class ChildRepository
{
public HttpResponseMessage Foo(HttpRequestMessage request)
{
// Do something
return request.CreateResponse(...);
}
}
請求來自ApiController。這會讓你通過'請求爲空'的問題。
希望這可以幫助別人。
確認嘗試使用'拋出新HttpResponseException(HttpStatusCode.NotFound)' – Rwiti
Rwiti嗨,你建議併爲下面的工作還有: '拋出新HttpResponseException(新HttpResponseMessage(HttpStatusCode。InternalServerError) { 內容=新的StringContent( 「無效的大小」), 的StatusCode = HttpStatusCode.Forbidden });' 但是在客戶端(JS)我無法得到 '內容' 性質的保持。任何理念? – Leo