Обработка исключений WCF из прокси-сервера веб-службы - PullRequest
1 голос
/ 22 июля 2010

У меня есть служба WCF (.NET 4), размещенная в IIS. Мой контракт на обслуживание имеет один метод с:

[FaultContract(typeof(string))]

Моя реализация сервиса для этого метода проверяет входные параметры и может выдать исключение, например:

if (string.IsNullOrWhiteSpace(siteName)) { throw new FaultException("siteName is required."); }

Пользовательская программа этого сервиса - консольное приложение .NET 2. В этом приложении я создал прокси-сервер веб-службы, щелкнув правой кнопкой мыши «Ссылки» и «Добавить веб-ссылку».

Когда я пытаюсь вызвать метод службы из клиентского приложения, отправив недействительное siteName, я получаю исключение 503 Служба недоступна вместо FaultException с пользовательским сообщением об ошибке.

Как заставить FaultException с пользовательским сообщением об ошибке распространяться на клиентскую программу?

UPDATE:

Исключение, которое я получаю в клиентском приложении, таково:

System.ServiceModel.ServerTooBusyException: Служба HTTP, расположенная по адресу http://www.example.com/services/myservice.svc слишком занят ---> System.Net.Web Исключение: удаленный сервер возвращен ошибка: (503) сервер недоступен.
в System.Net.HttpWebRequest.GetResponse () в System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpCha nnelRequest.WaitForReply (TimeSpan тайм-аут) --- конец внутреннего исключения трассировка стека ---

1 Ответ

0 голосов
/ 28 июля 2010

Проблема была вызвана пользовательским модулем HTTP в нашем веб-проекте.Так что это была не проблема WCF, а проблема, характерная для нашего решения.Спасибо!

...