Compartir a través de


DiscoveryExceptionDictionary Clase

Definición

Recopila las excepciones que se produjeron durante la detección de servicios web XML. Esta clase no puede heredarse.

public ref class DiscoveryExceptionDictionary sealed : System::Collections::DictionaryBase
public sealed class DiscoveryExceptionDictionary : System.Collections.DictionaryBase
type DiscoveryExceptionDictionary = class
    inherit DictionaryBase
Public NotInheritable Class DiscoveryExceptionDictionary
Inherits DictionaryBase
Herencia
DiscoveryExceptionDictionary

Ejemplos

#using <System.Xml.dll>
#using <System.Web.Services.dll>
#using <System.dll>

using namespace System;
using namespace System::Web::Services::Discovery;
using namespace System::Xml;
using namespace System::Collections;
using namespace System::Runtime::Remoting;
using namespace System::Net;

int main()
{
   String^ myDiscoFile = "http://localhost/MathService_cs.disco";
   String^ myUrlKey = "http://localhost/MathService_cs.asmx?wsdl";
   DiscoveryClientProtocol^ myDiscoveryClientProtocol1 = gcnew DiscoveryClientProtocol;
   DiscoveryDocument^ myDiscoveryDocument = myDiscoveryClientProtocol1->Discover( myDiscoFile );
   IEnumerator^ myEnumerator = myDiscoveryDocument->References->GetEnumerator();
   while ( myEnumerator->MoveNext() )
   {
      ContractReference^ myContractReference = dynamic_cast<ContractReference^>(myEnumerator->Current);
      DiscoveryClientProtocol^ myDiscoveryClientProtocol2 = myContractReference->ClientProtocol;
      myDiscoveryClientProtocol2->ResolveAll();
      
      DiscoveryExceptionDictionary^ myExceptionDictionary = myDiscoveryClientProtocol2->Errors;
      if ( myExceptionDictionary->Contains( myUrlKey ) == true )
      {
         Console::WriteLine( "'myExceptionDictionary' contains a discovery exception for the key '{0}'", myUrlKey );
      }
      else
      {
         Console::WriteLine( "'myExceptionDictionary' does not contain a discovery exception for the key '{0}'", myUrlKey );
      }
      if ( myExceptionDictionary->Contains( myUrlKey ) == true )
      {
         Console::WriteLine( "System generated exceptions." );
         
         Exception^ myException = myExceptionDictionary[ myUrlKey ];
         Console::WriteLine( " Source : {0}", myException->Source );
         Console::WriteLine( " Exception : {0}", myException->Message );

         Console::WriteLine();
         
         // Remove the discovery exception.for the key 'myUrlKey'.
         myExceptionDictionary->Remove( myUrlKey );

         DiscoveryExceptionDictionary^ myNewExceptionDictionary = gcnew DiscoveryExceptionDictionary;
         
         // Add an exception with the custom error message.
         Exception^ myNewException = gcnew Exception( "The requested service is not available." );
         myNewExceptionDictionary->Add( myUrlKey, myNewException );
         myExceptionDictionary = myNewExceptionDictionary;

         Console::WriteLine( "Added exceptions." );
         
         array<Object^>^myArray = gcnew array<Object^>(myExceptionDictionary->Count);
         myExceptionDictionary->Keys->CopyTo( (Array^)myArray, 0 );
         Console::WriteLine( " Keys are :" );

         for each(Object^ myObj in myArray)
         {
            Console::WriteLine(" " + myObj->ToString());
         }

         Console::WriteLine();
         
         array<Object^>^myCollectionArray = gcnew array<Object^>(myExceptionDictionary->Count);
         myExceptionDictionary->Values->CopyTo( (Array^)myCollectionArray, 0 );
         Console::WriteLine( " Values are :" );
         for each(Object^ myObj in myCollectionArray)
         {
            Console::WriteLine(" " + myObj->ToString());
         }
      }
   }
}
using System;
using System.Web.Services.Discovery;
using System.Xml;
using System.Collections;
using System.Runtime.Remoting;
using System.Net;

public class MySample
{
   static void Main()
   {
      string myDiscoFile = "http://localhost/MathService_cs.disco";
      string myUrlKey = "http://localhost/MathService_cs.asmx?wsdl";
      DiscoveryClientProtocol myDiscoveryClientProtocol1 =
                                            new DiscoveryClientProtocol();
      DiscoveryDocument myDiscoveryDocument =
                         myDiscoveryClientProtocol1.Discover(myDiscoFile);
      IEnumerator myEnumerator =
                           myDiscoveryDocument.References.GetEnumerator();
      while ( myEnumerator.MoveNext() )
      {
         ContractReference myContractReference =
                                  (ContractReference)myEnumerator.Current;
         DiscoveryClientProtocol myDiscoveryClientProtocol2 =
                                       myContractReference.ClientProtocol;
         myDiscoveryClientProtocol2.ResolveAll();
         DiscoveryExceptionDictionary myExceptionDictionary
                                      = myDiscoveryClientProtocol2.Errors;
         if ( myExceptionDictionary.Contains(myUrlKey) == true )
         {
            Console.WriteLine("'myExceptionDictionary' contains " +
                      " a discovery exception for the key '" + myUrlKey + "'");
         }
         else
         {
            Console.WriteLine("'myExceptionDictionary' does not contain" +
                      " a discovery exception for the key '" + myUrlKey + "'");
         }
         if (myExceptionDictionary.Contains(myUrlKey) == true )
         {
            Console.WriteLine("System generated exceptions.");

            Exception myException = myExceptionDictionary[myUrlKey];
            Console.WriteLine(" Source : " + myException.Source);
            Console.WriteLine(" Exception : " + myException.Message);

            Console.WriteLine();

            // Remove the discovery exception.for the key 'myUrlKey'.
            myExceptionDictionary.Remove(myUrlKey);

            DiscoveryExceptionDictionary myNewExceptionDictionary =
                                       new DiscoveryExceptionDictionary();
            // Add an exception with the custom error message.
            Exception myNewException =
                 new Exception("The requested service is not available.");
            myNewExceptionDictionary.Add(myUrlKey, myNewException);
            myExceptionDictionary = myNewExceptionDictionary;

            Console.WriteLine("Added exceptions.");

            object[] myArray = new object[myExceptionDictionary.Count];
            myExceptionDictionary.Keys.CopyTo((Array)myArray,0);
            Console.WriteLine(" Keys are :");
            foreach(object myObj in myArray)
            {
               Console.WriteLine(" " + myObj.ToString());
            }

            Console.WriteLine();

            object[] myCollectionArray = new object[myExceptionDictionary.Count];
            myExceptionDictionary.Values.CopyTo((Array)myCollectionArray,0);
            Console.WriteLine(" Values are :");
            foreach(object myObj in myCollectionArray)
            {
               Console.WriteLine(" " + myObj.ToString());
            }
         }
      }
   }
}
Imports System.Web.Services.Discovery
Imports System.Xml
Imports System.Collections
Imports System.Runtime.Remoting
Imports System.Net

Public Class MySample
   
   Shared Sub Main()
      Dim myDiscoFile As String = "http://localhost/MathService_vb.disco"
      Dim myUrlKey As String = "http://localhost/MathService_vb.asmx?wsdl"
      Dim myDiscoveryClientProtocol1 As New DiscoveryClientProtocol()
      Dim myDiscoveryDocument As DiscoveryDocument = myDiscoveryClientProtocol1.Discover(myDiscoFile)
      Dim myEnumerator As IEnumerator = myDiscoveryDocument.References.GetEnumerator()
      While myEnumerator.MoveNext()
         Dim myContractReference As ContractReference = CType(myEnumerator.Current, ContractReference)
         Dim myDiscoveryClientProtocol2 As DiscoveryClientProtocol = myContractReference.ClientProtocol
         myDiscoveryClientProtocol2.ResolveAll()
         Dim myExceptionDictionary As DiscoveryExceptionDictionary = myDiscoveryClientProtocol2.Errors
         If myExceptionDictionary.Contains(myUrlKey) = True Then
            Console.WriteLine("'myExceptionDictionary' contains " + _
                 "a discovery exception for the key '" + myUrlKey + "'")
         Else
            Console.WriteLine("'myExceptionDictionary' does not contain" + _
                 " a discovery exception for the key '" + myUrlKey + "'")
         End If
         If myExceptionDictionary.Contains(myUrlKey) = True Then
            Console.WriteLine("System generated exceptions.")
            
            Dim myException As Exception = myExceptionDictionary(myUrlKey)
            Console.WriteLine(" Source : " + myException.Source)
            Console.WriteLine(" Exception : " + myException.Message)
            Console.WriteLine()
            
            ' Remove the discovery exception.for the key 'myUrlKey'.
            myExceptionDictionary.Remove(myUrlKey)
            Dim myNewExceptionDictionary As New DiscoveryExceptionDictionary()
            ' Add an exception with the custom error message.
            Dim myNewException As New Exception("The requested service is not available.")
            myNewExceptionDictionary.Add(myUrlKey, myNewException)
            myExceptionDictionary = myNewExceptionDictionary
            Console.WriteLine("Added exceptions.")
            
            Dim myArray(myExceptionDictionary.Count -1 ) As Object
            myExceptionDictionary.Keys.CopyTo(CType(myArray, Array), 0)
            Console.WriteLine(" Keys are :")
            Dim myObj As Object
            For Each myObj In  myArray
               Console.WriteLine(" " + myObj.ToString())
            Next myObj
            Console.WriteLine()
            
            Dim myCollectionArray(myExceptionDictionary.Count -1 ) As Object
            myExceptionDictionary.Values.CopyTo(CType(myCollectionArray, Array), 0)
            Console.WriteLine(" Values are :")
            For Each myObj In  myCollectionArray
               Console.WriteLine(" " + myObj.ToString())
            Next myObj
         End If 
      End While
   End Sub
End Class

Comentarios

La Errors propiedad de DiscoveryClientProtocol es de tipo DiscoveryExceptionDictionary.

Constructores

DiscoveryExceptionDictionary()

Inicializa una nueva instancia de la clase DiscoveryExceptionDictionary.

Propiedades

Count

Obtiene el número de elementos contenidos en la instancia de DictionaryBase.

(Heredado de DictionaryBase)
Dictionary

Obtiene la lista de elementos incluidos en la instancia de DictionaryBase.

(Heredado de DictionaryBase)
InnerHashtable

Obtiene la lista de elementos incluidos en la instancia de DictionaryBase.

(Heredado de DictionaryBase)
Item[String]

Obtiene o establece Exception que se produjo durante el detección de la dirección URL desde DiscoveryExceptionDictionary.

Keys

Obtiene un objeto ICollection con todas las claves de DiscoveryExceptionDictionary.

Values

Obtiene un objeto ICollection que contiene todos los valores de DiscoveryExceptionDictionary.

Métodos

Add(String, Exception)

Agrega Exception con una clave de url a DiscoveryExceptionDictionary.

Clear()

Borra el contenido de la instancia de DictionaryBase.

(Heredado de DictionaryBase)
Contains(String)

Determina si DiscoveryExceptionDictionary contiene Exception con la dirección URL especificada.

CopyTo(Array, Int32)

Copia los elementos de DictionaryBase a una Array unidimensional en el índice especificado.

(Heredado de DictionaryBase)
Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetEnumerator()

Devuelve un IDictionaryEnumerator que itera por la instancia de DictionaryBase.

(Heredado de DictionaryBase)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
OnClear()

Ejecuta procesos personalizados adicionales antes de borrar el contenido de la instancia de DictionaryBase.

(Heredado de DictionaryBase)
OnClearComplete()

Realiza procesos personalizados adicionales después de borrar el contenido de la instancia de DictionaryBase.

(Heredado de DictionaryBase)
OnGet(Object, Object)

Obtiene el elemento con la clave y valor especificados en la instancia de DictionaryBase.

(Heredado de DictionaryBase)
OnInsert(Object, Object)

Realiza procesos personalizados adicionales antes de insertar un nuevo elemento en la instancia de DictionaryBase.

(Heredado de DictionaryBase)
OnInsertComplete(Object, Object)

Realiza procesos personalizados adicionales después de insertar un nuevo elemento en la instancia de DictionaryBase.

(Heredado de DictionaryBase)
OnRemove(Object, Object)

Realiza procesos personalizados adicionales antes de quitar un elemento de la instancia de DictionaryBase.

(Heredado de DictionaryBase)
OnRemoveComplete(Object, Object)

Realiza procesos personalizados adicionales después de quitar un elemento de la instancia de DictionaryBase.

(Heredado de DictionaryBase)
OnSet(Object, Object, Object)

Realiza procesos personalizados adicionales antes de establecer un valor en la instancia de DictionaryBase.

(Heredado de DictionaryBase)
OnSetComplete(Object, Object, Object)

Realiza procesos personalizados adicionales después de establecer un valor en la instancia de DictionaryBase.

(Heredado de DictionaryBase)
OnValidate(Object, Object)

Ejecuta procesos personalizados adicionales al validar el elemento con la clave y valor especificados.

(Heredado de DictionaryBase)
Remove(String)

Quita Exception con la dirección URL especificada de DiscoveryExceptionDictionary.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

ICollection.IsSynchronized

Obtiene un valor que indica si el acceso a un objeto DictionaryBase está sincronizado (es seguro para subprocesos).

(Heredado de DictionaryBase)
ICollection.SyncRoot

Obtiene un objeto que se puede utilizar para sincronizar el acceso a un objeto DictionaryBase.

(Heredado de DictionaryBase)
IDictionary.Add(Object, Object)

Agrega un elemento con la clave y el valor especificados a DictionaryBase.

(Heredado de DictionaryBase)
IDictionary.Contains(Object)

Determina si DictionaryBase contiene una clave específica.

(Heredado de DictionaryBase)
IDictionary.IsFixedSize

Obtiene un valor que indica si un objeto DictionaryBase tiene un tamaño fijo.

(Heredado de DictionaryBase)
IDictionary.IsReadOnly

Obtiene un valor que indica si un objeto DictionaryBase es de solo lectura.

(Heredado de DictionaryBase)
IDictionary.Item[Object]

Obtiene o establece el valor asociado a la clave especificada.

(Heredado de DictionaryBase)
IDictionary.Keys

Obtiene un objeto ICollection que contiene las claves del objeto DictionaryBase.

(Heredado de DictionaryBase)
IDictionary.Remove(Object)

Quita el elemento con la clave especificada de DictionaryBase.

(Heredado de DictionaryBase)
IDictionary.Values

Obtiene un objeto ICollection que contiene los valores del objeto DictionaryBase.

(Heredado de DictionaryBase)
IEnumerable.GetEnumerator()

Devuelve un objeto IEnumerator que itera a través del objeto DictionaryBase.

(Heredado de DictionaryBase)

Métodos de extensión

Cast<TResult>(IEnumerable)

Convierte los elementos de IEnumerable en el tipo especificado.

OfType<TResult>(IEnumerable)

Filtra los elementos de IEnumerable en función de un tipo especificado.

AsParallel(IEnumerable)

Habilita la paralelización de una consulta.

AsQueryable(IEnumerable)

Convierte una interfaz IEnumerable en IQueryable.

Se aplica a

Consulte también