DiscoveryClientProtocol.Errors 属性
定义
获取在调用此类方法的过程中发生的异常的集合。Gets a collection of exceptions that occurred during invocation of method from this class.
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。A DiscoveryExceptionDictionary of exceptions.
示例
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集合中填充了在 Discover 、 DiscoverAny 、 ResolveAll 和方法的调用过程中发生的异常 ResolveOneLevel 。The Errors collection is populated with exceptions that occurred during invocations to the Discover, DiscoverAny, ResolveAll, and ResolveOneLevel methods. DiscoveryExceptionDictionary在调用这些方法时,会清除。The DiscoveryExceptionDictionary is cleared on invocation of these methods.