Sdílet prostřednictvím


DiscoveryExceptionDictionary Třída

Definice

Shromažďuje výjimky, ke kterým došlo při zjišťování webových služeb XML. Tuto třídu nelze dědit.

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
Dědičnost
DiscoveryExceptionDictionary

Příklady

#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 ))
      {
         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 ) )
      {
         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))
         {
            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))
         {
            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

Poznámky

Vlastnost Errors je DiscoveryClientProtocol typu DiscoveryExceptionDictionary.

Konstruktory

DiscoveryExceptionDictionary()

Inicializuje novou instanci DiscoveryExceptionDictionary třídy .

Vlastnosti

Count

Získá počet prvků obsažených DictionaryBase v instanci.

(Zděděno od DictionaryBase)
Dictionary

Získá seznam prvků obsažených DictionaryBase v instanci.

(Zděděno od DictionaryBase)
InnerHashtable

Získá seznam prvků obsažených DictionaryBase v instanci.

(Zděděno od DictionaryBase)
Item[String]

Získá nebo nastaví objekt Exception , ke kterému došlo při zjišťování zadané adresy URL z objektu DiscoveryExceptionDictionary.

Keys

Získá objekt se ICollection všemi klíči v objektu DiscoveryExceptionDictionary.

Values

ICollection Získá objekt obsahující všechny hodnoty v objektu DiscoveryExceptionDictionary.

Metody

Add(String, Exception)

Přidá do objektu Exception s klíčem urlDiscoveryExceptionDictionary.

Clear()

Vymaže obsah DictionaryBase instance.

(Zděděno od DictionaryBase)
Contains(String)

Určuje, zda obsahuje DiscoveryExceptionDictionary objekt se zadanou Exception adresou URL.

CopyTo(Array, Int32)

Zkopíruje DictionaryBase prvky do jednorozměrného Array v zadaném indexu.

(Zděděno od DictionaryBase)
Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetEnumerator()

Vrátí hodnotu , IDictionaryEnumerator která iteruje prostřednictvím DictionaryBase instance.

(Zděděno od DictionaryBase)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
OnClear()

Před vymazáním obsahu DictionaryBase instance provede další vlastní procesy.

(Zděděno od DictionaryBase)
OnClearComplete()

Provádí další vlastní procesy po vymazání obsahu DictionaryBase instance.

(Zděděno od DictionaryBase)
OnGet(Object, Object)

Získá prvek se zadaným klíčem a hodnotou v DictionaryBase instanci.

(Zděděno od DictionaryBase)
OnInsert(Object, Object)

Provádí další vlastní procesy před vložením nového prvku do DictionaryBase instance.

(Zděděno od DictionaryBase)
OnInsertComplete(Object, Object)

Provádí další vlastní procesy po vložení nového prvku do DictionaryBase instance.

(Zděděno od DictionaryBase)
OnRemove(Object, Object)

Provádí další vlastní procesy před odebráním elementu DictionaryBase z instance.

(Zděděno od DictionaryBase)
OnRemoveComplete(Object, Object)

Provádí další vlastní procesy po odebrání prvku z DictionaryBase instance.

(Zděděno od DictionaryBase)
OnSet(Object, Object, Object)

Před nastavením hodnoty v DictionaryBase instanci provede další vlastní procesy.

(Zděděno od DictionaryBase)
OnSetComplete(Object, Object, Object)

Provádí další vlastní procesy po nastavení hodnoty v DictionaryBase instanci.

(Zděděno od DictionaryBase)
OnValidate(Object, Object)

Provádí další vlastní procesy při ověřování elementu pomocí zadaného klíče a hodnoty.

(Zděděno od DictionaryBase)
Remove(String)

Odebere objekt Exception se zadanou adresou URL z objektu DiscoveryExceptionDictionary.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

ICollection.IsSynchronized

Získá hodnotu označující, zda přístup k objektu DictionaryBase je synchronizován (bezpečné pro přístup z více vláken).

(Zděděno od DictionaryBase)
ICollection.SyncRoot

Získá objekt, který lze použít k synchronizaci přístupu k objektu DictionaryBase .

(Zděděno od DictionaryBase)
IDictionary.Add(Object, Object)

Přidá prvek se zadaným klíčem a hodnotou do objektu DictionaryBase.

(Zděděno od DictionaryBase)
IDictionary.Contains(Object)

Určuje, zda obsahuje DictionaryBase konkrétní klíč.

(Zděděno od DictionaryBase)
IDictionary.IsFixedSize

Získá hodnotu označující, zda DictionaryBase objekt má pevnou velikost.

(Zděděno od DictionaryBase)
IDictionary.IsReadOnly

Získá hodnotu označující, zda DictionaryBase je objekt jen pro čtení.

(Zděděno od DictionaryBase)
IDictionary.Item[Object]

Získá nebo nastaví hodnotu přidruženou k zadanému klíči.

(Zděděno od DictionaryBase)
IDictionary.Keys

ICollection Získá objekt obsahující klíče v objektu DictionaryBase .

(Zděděno od DictionaryBase)
IDictionary.Remove(Object)

Odebere prvek se zadaným klíčem z objektu DictionaryBase.

(Zděděno od DictionaryBase)
IDictionary.Values

ICollection Získá objekt obsahující hodnoty v objektuDictionaryBase.

(Zděděno od DictionaryBase)
IEnumerable.GetEnumerator()

Vrátí hodnotu IEnumerator , která iteruje přes DictionaryBase.

(Zděděno od DictionaryBase)

Metody rozšíření

Cast<TResult>(IEnumerable)

Přetypuje prvky objektu na IEnumerable zadaný typ.

OfType<TResult>(IEnumerable)

Filtruje prvky objektu IEnumerable na základě zadaného typu.

AsParallel(IEnumerable)

Umožňuje paralelizaci dotazu.

AsQueryable(IEnumerable)

Převede objekt na IEnumerableIQueryable.

Platí pro

Viz také