В соответствии с документацией HttpResponseMessage на MSDN, фраза причины (как в части «ОК» в 200 ОК) должна быть настраиваемой. Ответ HTTP позволяет мне установить фразу причины:
HttpResponseMessage response = new HttpResponseMessage(System.Net.HttpStatusCode.Conflict);
response.ReasonPhrase = "conflict message";
Однако, когда я использую ответ на стороне клиента в качестве WebResponse, я не вижу своей пользовательской фразы причины. Я ожидаю найти его под StatusDescription. Глядя на необработанный ответ с использованием Fiddler, не похоже, что фраза причины установлена на сервере.
Полезный сотрудник отметил, что с результатами действий (и производными) я мог бы сделать что-то похожее на:
new HttpStatusCodeResult(System.Net.HttpStatusCode.Conflict, "conflict message");
Кажется, что именно эта функциональность мне нужна, но я не уверен, как убедить WebAPI сотрудничать.
Куда я иду не так?