В веб-сервисах .NET как свойство SoapException.Message может быть легко читаемым? - PullRequest
5 голосов
/ 25 сентября 2010

Я пишу веб-службу ASP.NET и выдаю исключение SoapException с сообщением:

throw new SoapException("BANG!", SoapException.ClientFaultCode);

Когда я создаю клиент ASP.NET и запрашиваю метку для отображения свойства SoapException.Message, он отображает сообщение, подобное следующему:

System.Web.Services.Protocols.SoapException: BANG!на WebServiceException.WebService1.HelloWorld () в [DIRECTORY] \ WebService1.asmx.cs: строка 23

Есть ли простой способ просто быть представлен с сообщением BANG!а не вся эта строка?Или мне просто использовать регулярные выражения?

1 Ответ

7 голосов
/ 25 сентября 2010

Если вы настроите свой веб-сервис на включение пользовательских сообщений об ошибках, трассировка стека не будет присутствовать в ошибке SOAP, что, в свою очередь, будет означать, что ваш клиент ее не увидит.

В web.config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    ...
    <system.web>
        ...
        <customErrors mode="On"/>
        ...
    </system.web>
    ...
</configuration>
...