Получить код состояния после возврата в Web Api Controller - PullRequest
0 голосов
/ 27 мая 2020

Интересно, есть ли способ получить код состояния, который контроллер возвратил после оператора return. Позволь мне объяснить. У меня есть следующий код

[HttpPost]
public IHttpActionResult Post(Order order)
{
   try 
   {
      // some code
      return Created();
   }
   catch(Exception e)
   {
      // some code  
      return InternalServerError(e)
   }
   finally
   {
      // Here I want to know if I've returned Created or InternalServerError
   }
}

Я знаю, что могу объявить переменную перед попыткой, назначить ее в блоках try и catch и прочитать позже в файле finally. Это решение, которое я использую сейчас, но я ищу более элегантное .

Я видел, что в контроллере есть свойство ActionContext.Response.StatusCode, похоже, это то, что я ищу, но ActionContext.Response имеет значение null в то время, когда выполняется блок finally

...