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 zdě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 ErrorsDiscoveryClientProtocol je typu DiscoveryExceptionDictionary.

Konstruktory

Name Description
DiscoveryExceptionDictionary()

Inicializuje novou instanci DiscoveryExceptionDictionary třídy.

Vlastnosti

Name Description
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í, k němuž Exception došlo při zjišťování zadané adresy URL ze DiscoveryExceptionDictionarysouboru .

Keys

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

Values

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

Metody

Name Description
Add(String, Exception)

Přidá klávesu Exception s klíčem url do objektu DiscoveryExceptionDictionary.

Clear()

Vymaže obsah DictionaryBase instance.

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

Určuje, zda DiscoveryExceptionDictionary obsahuje zadanou Exception adresu URL.

CopyTo(Array, Int32)

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

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

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

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

IDictionaryEnumerator Vrátí iterátor prostřednictvím DictionaryBase instance.

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

Slouží jako výchozí funkce hash.

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

Získá Type aktuální instance.

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

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

(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)

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

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

Před odebráním elementu DictionaryBase z instance provede další vlastní procesy.

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

Provádí další vlastní procesy po odebrání elementu DictionaryBase z 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)

Provede 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 se zadaným klíčem a hodnotou.

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

Odebere ze zadané DiscoveryExceptionDictionaryadresy URL zadanou Exception adresu URL .

ToString()

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

(Zděděno od Object)

Explicitní implementace rozhraní

Name Description
ICollection.IsSynchronized

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

(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 DictionaryBase obsahuje konkrétní klíč.

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

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

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

Získá hodnotu určující, zda DictionaryBase objekt je 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 objektuDictionaryBase.

(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()

IEnumerator Vrátí iteruje přes DictionaryBase.

(Zděděno od DictionaryBase)

Metody rozšíření

Name Description
AsParallel(IEnumerable)

Umožňuje paralelizaci dotazu.

AsQueryable(IEnumerable)

Převede IEnumerable na IQueryable.

Cast<TResult>(IEnumerable)

Přetypuje prvky IEnumerable na zadaný typ.

OfType<TResult>(IEnumerable)

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

Platí pro

Viz také