Для возврата из контроллера Web API 2 я могу вернуть содержимое с ответом, если ответ в порядке (состояние 200), например так:
public IHttpActionResult Get()
{
string myResult = ...
return Ok(myResult);
}
Если возможно, я хочу по возможности использовать встроенные типы результатов здесь: https://msdn.microsoft.com/en-us/library/system.web.http.results(v=vs.118).aspx
Мой вопрос, для другого типа ответа (не 200), как я могу вернуть сообщение (строку) с ним? Например, я могу сделать это:
public IHttpActionResult Get()
{
return InternalServerError();
}
но не это
public IHttpActionResult Get()
{
return InternalServerError("Message describing the error here");
}
В идеале я хочу, чтобы это было обобщено, чтобы я мог отправить сообщение обратно с любой из реализаций IHttpActionResult.
Должен ли я сделать это (и создать свое собственное ответное сообщение):
public IHttpActionResult Get()
{
HttpResponseMessage responseMessage = ...
return ResponseMessage(responseMessage);
}
или есть лучший способ?
ApiController.InternalServerError
msdn.microsoft.com/en-us/library/dn292630(v=vs.118).aspx