L'operazione Web API restituisce un HTTP 500 (Internal Server Error) codice di stato:Web API 2 - ApiController.InternalServerError() restituisce HTTP 400 codice di stato
public IHttpActionResult Post()
{
return InternalServerError();
}
Ma questa azione restituisce un HTTP 400 (Bad Request) codice di stato:
public IHttpActionResult Post()
{
return InternalServerError(new Exception());
}
mi si aspetterebbe entrambe le azioni per restituire un codice di stato e 500 la seconda azione pone alcuni dei dettagli di errore nel corpo della risposta.
Il mio primo pensiero è che questo è un bug ma volevo ottenere qualche altro input. C'è una buona ragione per cui un 400 dovrebbe essere restituito nella seconda azione invece di un 500?
UPDATE:
La documentazione su questo metodo si legge:
Crea uno System.Web.Http.Results.ExceptionResult (500 Internal Server Error) con l'eccezione specificata.
Sto pensando sempre più questo è un bug.
non c'è problema relativo a questo, si dovrebbe aprire una alla http://aspnetwebstack.codeplex.com/workitem/list/basic – Fals