У меня есть клиент Windows Forms, который использует веб-сервис ASP.net.
Насколько я понимаю, когда веб-служба создает исключение, оно преобразуется в SoapException в клиентском программном обеспечении .net.
Хорошо, я ловлю SoapException, но когда я отображаю сообщение на стороне клиента в окне сообщений, оно показывает больше информации, чем я действительно хочу показать.
Вот код веб-сервиса:
throw new ApplicationException("Invalid username or password.");
Или даже:
throw new SoapException("Invalid username or password.", SoapException.ServerFaultCode);
Но на стороне клиента свойство Message SoapException выглядит так:
System.Web.Services.Protocols.SoapException: Invalid username or password. at Transportation.InsertSignUps(String username, String password, SignUp[] signUps) in c:\Documents and Settings\rdoverby\My Documents\Visual Studio 2008\WebSites\www.gtcc.edu\App_Code\webservices\Transportation.cs:line 50
Принимая во внимание, что я действительно хочу показать:
Invalid username or password.
Как я могу извлечь ТОЛЬКО исходное сообщение об исключении из SoapException. Я просмотрел объект SoapException в отладчике VS, но не могу найти то, что ищу.
Спасибо.
EDIT
Конечно, я не хочу разбирать эту длинную строку.