次の方法で共有


DiscoveryClientProtocol.Errors プロパティ

定義

このクラスからメソッドを呼び出したときに発生した例外のコレクションを取得します。

public:
 property System::Web::Services::Discovery::DiscoveryExceptionDictionary ^ Errors { System::Web::Services::Discovery::DiscoveryExceptionDictionary ^ get(); };
public System.Web.Services.Discovery.DiscoveryExceptionDictionary Errors { get; }
member this.Errors : System.Web.Services.Discovery.DiscoveryExceptionDictionary
Public ReadOnly Property Errors As DiscoveryExceptionDictionary

プロパティ値

例外の DiscoveryExceptionDictionary

   String^ myDiscoFile = "http://localhost/MathService_cs.vsdisco";
   String^ myUrlKey = "http://localhost/MathService_cs.asmx?wsdl";
   DiscoveryClientProtocol^ myDiscoveryClientProtocol = gcnew DiscoveryClientProtocol;
   
   // Get the discovery document.
   DiscoveryDocument^ myDiscoveryDocument = myDiscoveryClientProtocol->Discover( myDiscoFile );
   IEnumerator^ myEnumerator = myDiscoveryDocument->References->GetEnumerator();
   while ( myEnumerator->MoveNext() )
   {
      ContractReference^ myContractReference = dynamic_cast<ContractReference^>(myEnumerator->Current);
      
      // Get the DiscoveryClientProtocol from the ContractReference.
      myDiscoveryClientProtocol = myContractReference->ClientProtocol;
      myDiscoveryClientProtocol->ResolveAll();
      DiscoveryExceptionDictionary^ myExceptionDictionary = myDiscoveryClientProtocol->Errors;
      if ( myExceptionDictionary->Contains( myUrlKey ) )
      {
         Console::WriteLine( "System generated exceptions." );
         
         // Get the exception from the DiscoveryExceptionDictionary.
         Exception^ myException = myExceptionDictionary[ myUrlKey ];
         Console::WriteLine( " Source : {0}", myException->Source );
         Console::WriteLine( " Exception : {0}", myException->Message );
      }
   }
}
string myDiscoFile = "http://localhost/MathService_cs.vsdisco";
string myUrlKey = "http://localhost/MathService_cs.asmx?wsdl";
DiscoveryClientProtocol myDiscoveryClientProtocol =
      new DiscoveryClientProtocol();

// Get the discovery document.
DiscoveryDocument myDiscoveryDocument =
   myDiscoveryClientProtocol.Discover(myDiscoFile);
IEnumerator myEnumerator =
      myDiscoveryDocument.References.GetEnumerator();
while ( myEnumerator.MoveNext() )
{
   ContractReference myContractReference =
      (ContractReference)myEnumerator.Current;

   // Get the DiscoveryClientProtocol from the ContractReference.
   myDiscoveryClientProtocol = myContractReference.ClientProtocol;
   myDiscoveryClientProtocol.ResolveAll();

   DiscoveryExceptionDictionary myExceptionDictionary
      = myDiscoveryClientProtocol.Errors;

   if (myExceptionDictionary.Contains(myUrlKey))
   {
      Console.WriteLine("System generated exceptions.");

      // Get the exception from the DiscoveryExceptionDictionary.
      Exception myException = myExceptionDictionary[myUrlKey];

      Console.WriteLine(" Source : " + myException.Source);
      Console.WriteLine(" Exception : " + myException.Message);
   }
}
Dim myDiscoFile As String = "http://localhost/MathService_vb.vsdisco"
Dim myUrlKey As String = "http://localhost/MathService_vb.asmx?wsdl"
Dim myDiscoveryClientProtocol As New DiscoveryClientProtocol()

' Get the discovery document.
Dim myDiscoveryDocument As DiscoveryDocument = myDiscoveryClientProtocol.Discover(myDiscoFile)
Dim myEnumerator As IEnumerator = myDiscoveryDocument.References.GetEnumerator()
While myEnumerator.MoveNext()
  Dim myContractReference As ContractReference = CType(myEnumerator.Current, ContractReference)
   
  ' Get the DiscoveryClientProtocol from the ContractReference.
   myDiscoveryClientProtocol = myContractReference.ClientProtocol
   myDiscoveryClientProtocol.ResolveAll()

   Dim myExceptionDictionary As DiscoveryExceptionDictionary = myDiscoveryClientProtocol.Errors

   If myExceptionDictionary.Contains(myUrlKey) Then
      Console.WriteLine("System generated exceptions.")
      
      ' Get the exception from the DiscoveryExceptionDictionary.
      Dim myException As Exception = myExceptionDictionary(myUrlKey)
      
      Console.WriteLine(" Source : " & myException.Source)
      Console.WriteLine(" Exception : " & myException.Message)
      Console.WriteLine()
   End If
End While

注釈

コレクションにはErrors、および ResolveOneLevel メソッドの呼び出し中にDiscoverDiscoverAnyResolveAll発生した例外が設定されます。 DiscoveryExceptionDictionaryは、これらのメソッドの呼び出し時にクリアされます。

適用対象