Обработка ошибок (отправка ex.Message клиенту)

У меня есть приложение ASP.NET Core 1.0 Web API, и я пытаюсь выяснить, как передать сообщение об исключении клиенту, если функция, которую мой контроллер вызывает из-за ошибок.

Я перепробовал так много вещей, но ничего не реализовалIActionResult.

Я не понимаю, почему это не обычное дело, которое нужно людям. Если нет правдивого решения, может кто-нибудь сказать мне, почему?

Я вижу некоторую документацию там, используяHttpResponseException(HttpResponseMessage), но для того, чтобы использовать это, я должен установить Compat Shim. Есть ли новый способ сделать это в Core 1.0?

Вот что я пробовал с прокладкой, но она не работает:

// GET: api/customers/{id}
[HttpGet("{id}", Name = "GetCustomer")]
public IActionResult GetById(int id)
{
    Customer c = _customersService.GetCustomerById(id);
    if (c == null)
    {
        var response = new HttpResponseMessage(HttpStatusCode.NotFound)
        {
            Content = new StringContent("Customer doesn't exist", System.Text.Encoding.UTF8, "text/plain"),
            StatusCode = HttpStatusCode.NotFound

        };

        throw new HttpResponseException(response);

        //return NotFound();
    }
    return new ObjectResult(c);
}

КогдаHttpResponseException выброшен, я смотрю на клиента и не могу найти сообщение, которое я отправляю в контенте.

Ответы на вопрос(5)

Ваш ответ на вопрос