Para regresar de un controlador Web API 2, puedo devolver contenido con la respuesta si la respuesta es correcta (estado 200) de esta manera:
public IHttpActionResult Get()
{
string myResult = ...
return Ok(myResult);
}
Si es posible, quiero usar los tipos de resultados integrados aquí cuando sea posible: https://msdn.microsoft.com/en-us/library/system.web.http.results(v=vs.118).aspx
Mi pregunta es, para otro tipo de respuesta (no 200), ¿cómo puedo devolver un mensaje (cadena) con él? Por ejemplo, puedo hacer esto:
public IHttpActionResult Get()
{
return InternalServerError();
}
pero no esto:
public IHttpActionResult Get()
{
return InternalServerError("Message describing the error here");
}
Idealmente, quiero que esto se generalice para poder enviar un mensaje de vuelta con cualquiera de las implementaciones de IHttpActionResult.
¿Necesito hacer esto (y construir mi propio mensaje de respuesta):
public IHttpActionResult Get()
{
HttpResponseMessage responseMessage = ...
return ResponseMessage(responseMessage);
}
¿O hay un mejor camino?
ApiController.InternalServerError
msdn.microsoft.com/en-us/library/dn292630(v=vs.118).aspx