2013-05-29 2 views
1

Я пытаюсь поймать определенные SoapExceptions, но не могу найти код ошибки для использования.Не удается найти код ошибки SoapException в C#

Я попытался получить код ошибки с помощью;

catch(SoapException e) 
     { 
      // Get error code 
      int ErrorCode = System.Runtime.InteropServices.Marshal.GetExceptionCode(); //System.Runtime.InteropServices.Marshal.GetHRForException(e); 

      switch (ErrorCode) 
      { 
       case -2146233087: 
        { 
         // Default parameters have not been established in the report 
         return "false"; 
        } 
       default: 
        { 
         return "false"; 
        } 
      } 
     } 

Но это не сработает. Кто-нибудь знает, где искать код ошибки? Единственное soloution я могу возможно думать о делает матч строки на

e.GetBaseException().ToString() 

, но это было бы некрасиво

ОТВЕТ

string ErrorCode = ((e.Detail).FirstChild).InnerText; 
+1

http://msdn.microsoft.com/pl-pl/library/system.web.services.protocols.soapexception.code.aspx – Freelancer

+1

Вы должны ввести это как ответ и отметить его, чтобы другие могли его найти в будущем –

ответ

0
string ErrorCode = ((e.Detail).FirstChild).InnerText; 

вернулся «rsAccessDenied», который что мне нужно для оценки моей ошибки.

Смежные вопросы