Как я могу создать собственный код состояния HTTP из метода WCF REST? - PullRequest
2 голосов
/ 07 января 2010

Я хотел бы вернуть пользовательский код состояния HTTP из веб-службы RESTful WCF при выполнении определенного условия.

Я не хочу использовать стандартные коды состояния HTTP; вместо этого я хотел бы вернуть, например, код состояния 514. Это что-то значит для вызывающего пользователя.

Возможно ли это с WebOperationContext.Current.OutgoingResponse?

1 Ответ

2 голосов
/ 07 января 2010

OutgoingResponse.StatusCode - это место, где вы устанавливаете код состояния, но это перечисление HttpStatusCode , а не целое значение.

Вы можете привести пользовательское значение int к HttpStatusCode, но я не уверен, что фреймворк будет с ним делать; скорее всего, он бросит, но попробовать не помешает.

Хотя спецификация HTTP не запрещает настраиваемые коды ответов, вероятно, не стоит идти по этому пути, если только вы не обязаны это делать. Возможно, заголовок пользовательского ответа будет лучше?

Если вам нужно пройти маршрут пользовательского кода состояния, другим вариантом может быть использование режима совместимости ASP.NET. Это позволит вам использовать HttpContext.Current.Response.StatusCode , который является целым числом. Вы должны были бы быть размещены в IIS для этого, однако, и я не знаю вашу архитектуру.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...