CommunicationException CommunicationException CommunicationException CommunicationException Class

Définition

Représente une erreur de communication dans le service ou l'application cliente.Represents a communication error in either the service or client application.

public ref class CommunicationException : SystemException
[System.Serializable]
public class CommunicationException : SystemException
type CommunicationException = class
    inherit SystemException
Public Class CommunicationException
Inherits SystemException
Héritage
CommunicationExceptionCommunicationExceptionCommunicationExceptionCommunicationException
Dérivé
Attributs

Exemples

L'exemple de code suivant illustre un client qui gère les types CommunicationException.The following code example shows a client that handles CommunicationException types. Ce client gère également les objets FaultException car la valeur IncludeExceptionDetailInFaults est affectée à la propriété true du service .This client also handles FaultException objects because the service has IncludeExceptionDetailInFaults set to true.

using System;
using System.ServiceModel;
using System.ServiceModel.Channels;
using Microsoft.WCF.Documentation;

public class Client
{
  public static void Main()
  {
    // Picks up configuration from the configuration file.
    SampleServiceClient wcfClient = new SampleServiceClient();
    try
    {
      // Making calls.
      Console.WriteLine("Enter the greeting to send: ");
      string greeting = Console.ReadLine();
      Console.WriteLine("The service responded: " + wcfClient.SampleMethod(greeting));
      Console.WriteLine("Press ENTER to exit:");
      Console.ReadLine();
    }
    catch (TimeoutException timeProblem)
    {
      Console.WriteLine("The service operation timed out. " + timeProblem.Message);
      wcfClient.Abort();
      Console.ReadLine();
    }
    // Catch the contractually specified SOAP fault raised here as an exception.
    catch (FaultException<GreetingFault> greetingFault)
    {
      Console.WriteLine(greetingFault.Detail.Message);
      Console.Read();
      wcfClient.Abort();
    }
    // Catch unrecognized faults. This handler receives exceptions thrown by WCF
    // services when ServiceDebugBehavior.IncludeExceptionDetailInFaults 
    // is set to true.
    catch (FaultException faultEx)
    {
      Console.WriteLine("An unknown exception was received. " 
        + faultEx.Message
        + faultEx.StackTrace
      );
      Console.Read();
      wcfClient.Abort();
    }
    // Standard communication fault handler.
    catch (CommunicationException commProblem)
    {
      Console.WriteLine("There was a communication problem. " + commProblem.Message + commProblem.StackTrace);
      Console.Read();
      wcfClient.Abort();
    }
  }
}

Imports System
Imports System.ServiceModel
Imports System.ServiceModel.Channels
Imports Microsoft.WCF.Documentation

Public Class Client
  Public Shared Sub Main()
	' Picks up configuration from the configuration file.
	Dim wcfClient As New SampleServiceClient()
	Try
	  ' Making calls.
	  Console.WriteLine("Enter the greeting to send: ")
	  Dim greeting As String = Console.ReadLine()
	  Console.WriteLine("The service responded: " & wcfClient.SampleMethod(greeting))
	  Console.WriteLine("Press ENTER to exit:")
	  Console.ReadLine()
	Catch timeProblem As TimeoutException
	  Console.WriteLine("The service operation timed out. " & timeProblem.Message)
	  wcfClient.Abort()
	  Console.ReadLine()
	' Catch the contractually specified SOAP fault raised here as an exception.
	Catch greetingFault As FaultException(Of GreetingFault)
	  Console.WriteLine(greetingFault.Detail.Message)
	  Console.Read()
	  wcfClient.Abort()
	' Catch unrecognized faults. This handler receives exceptions thrown by WCF
	' services when ServiceDebugBehavior.IncludeExceptionDetailInFaults 
	' is set to true.
	Catch faultEx As FaultException
	  Console.WriteLine("An unknown exception was received. " & faultEx.Message + faultEx.StackTrace)
	  Console.Read()
	  wcfClient.Abort()
	' Standard communication fault handler.
	Catch commProblem As CommunicationException
	  Console.WriteLine("There was a communication problem. " & commProblem.Message + commProblem.StackTrace)
	  Console.Read()
	  wcfClient.Abort()
	End Try
  End Sub
End Class

Remarques

Client fiable et service handle d’applications Windows Communication Foundation (WCF) CommunicationException les objets qui peuvent se produire pendant la communication.Robust client and service Windows Communication Foundation (WCF) applications handle CommunicationException objects that may be thrown during communication. Il existe également deux types d'exception dérivés de l'CommunicationException (FaultException<TDetail> et FaultException) que les clients attendent souvent.There are also two CommunicationException-derived exception types (FaultException<TDetail> and FaultException) that clients also often expect. Par conséquent, pour empêcher que le gestionnaire CommunicationException générique intercepte ces types d'exception plus spécifiques, interceptez ces exceptions avant de gérer CommunicationException.Therefore, in order to prevent the generic CommunicationException handler from catching these more specific exception types, catch these exceptions prior to handling CommunicationException.

  • Les objets FaultException<TDetail> sont levés sur le client lorsqu'une erreur SOAP spécifiée dans le contrat d'opération est reçue en réponse à une opération bidirectionnelle (autrement dit, une méthode avec un attribut OperationContractAttribute ayant la valeur IsOneWay affectée à la propriété false).FaultException<TDetail> objects are thrown on the client when a SOAP fault that is specified in the operation contract is received in response to a two-way operation (that is, a method with an OperationContractAttribute attribute with IsOneWay set to false).

Les objets FaultException sont levés lorsqu'un écouteur reçoit une erreur SOAP qui n'est pas attendue ou qui n'est pas spécifiée dans le contrat d'opération.FaultException objects are thrown when a listener receives a SOAP fault that is not expected or specified in the operation contract. Cela se produit habituellement lorsque l'application est déboguée et que la valeur IncludeExceptionDetailInFaults est affectée à la propriété true du service.This usually occurs when the application is being debugged and the service has the IncludeExceptionDetailInFaults property set to true.

Notes

Lors de l’implémentation de canaux personnalisés et d’éléments de liaison, il est fortement recommandé que vos composants lèvent uniquement des objets dérivés de l’System.TimeoutException ou CommunicationException.When implementing custom channels and binding elements, it is strongly recommended that your components throw only System.TimeoutException or CommunicationException-derived objects. Dans le cas où vos composants lèvent une exception récupérable qui est spécifique au composant, encapsulez cette exception dans un objet CommunicationException.In the case where your components throw a recoverable exception that is specific to the component, wrap that exception inside a CommunicationException object.

Pour plus d’informations sur la conception et à l’aide du système d’erreur WCF, consultez spécification et gestion des erreurs dans les contrats et Services.For more details about designing and using the WCF fault system, see Specifying and Handling Faults in Contracts and Services.

Important

Le Runtime WCF ne lèvera pas un CommunicationException qui n’est pas sûre à gérer au point où il quitte le Runtime WCF et entre un code utilisateur.The WCF Runtime will not throw a CommunicationException that is unsafe to handle at the point where it leaves the WCF Runtime and enters user code.

Constructeurs

CommunicationException() CommunicationException() CommunicationException() CommunicationException()

Initialise une nouvelle instance de la classe CommunicationException.Initializes a new instance of the CommunicationException class.

CommunicationException(SerializationInfo, StreamingContext) CommunicationException(SerializationInfo, StreamingContext) CommunicationException(SerializationInfo, StreamingContext) CommunicationException(SerializationInfo, StreamingContext)

Initialise une nouvelle instance de la classe CommunicationException à l'aide des informations de sérialisation et des objets de contexte spécifiés.Initializes a new instance of the CommunicationException class, using the specified serialization information and context objects.

CommunicationException(String) CommunicationException(String) CommunicationException(String) CommunicationException(String)

Initialise une nouvelle instance de la classe CommunicationException à l'aide du message spécifié.Initializes a new instance of the CommunicationException class, using the specified message.

CommunicationException(String, Exception) CommunicationException(String, Exception) CommunicationException(String, Exception) CommunicationException(String, Exception)

Initialise une nouvelle instance de la classe CommunicationException à l'aide du message et de l'exception interne spécifiés.Initializes a new instance of the CommunicationException class, using the specified message and the inner exception.

Propriétés

Data Data Data Data

Obtient une collection de paires clé/valeur qui fournissent des informations supplémentaires définies par l’utilisateur sur l’exception.Gets a collection of key/value pairs that provide additional user-defined information about the exception.

(Inherited from Exception)
HelpLink HelpLink HelpLink HelpLink

Obtient ou définit un lien vers le fichier d'aide associé à cette exception.Gets or sets a link to the help file associated with this exception.

(Inherited from Exception)
HResult HResult HResult HResult

Obtient ou définit HRESULT, valeur numérique codée qui est assignée à une exception spécifique.Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.

(Inherited from Exception)
InnerException InnerException InnerException InnerException

Obtient l'instance Exception qui a provoqué l'exception actuelle.Gets the Exception instance that caused the current exception.

(Inherited from Exception)
Message Message Message Message

Obtient un message qui décrit l'exception actuelle.Gets a message that describes the current exception.

(Inherited from Exception)
Source Source Source Source

Obtient ou définit le nom de l'application ou de l'objet qui est à l'origine de l'erreur.Gets or sets the name of the application or the object that causes the error.

(Inherited from Exception)
StackTrace StackTrace StackTrace StackTrace

Obtient une représentation sous forme de chaîne des frames immédiats sur la pile des appels.Gets a string representation of the immediate frames on the call stack.

(Inherited from Exception)
TargetSite TargetSite TargetSite TargetSite

Obtient la méthode qui lève l'exception actuelle.Gets the method that throws the current exception.

(Inherited from Exception)

Méthodes

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetBaseException() GetBaseException() GetBaseException() GetBaseException()

En cas de substitution dans une classe dérivée, retourne la Exception qui est à l'origine d'une ou de plusieurs exceptions ultérieures.When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.

(Inherited from Exception)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fait office de fonction de hachage par défaut.Serves as the default hash function.

(Inherited from Object)
GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext)

En cas de substitution dans une classe dérivée, définit SerializationInfo avec des informations sur l'exception.When overridden in a derived class, sets the SerializationInfo with information about the exception.

(Inherited from Exception)
GetType() GetType() GetType() GetType()

Obtient le type au moment de l'exécution de l'instance actuelle.Gets the runtime type of the current instance.

(Inherited from Exception)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Crée et retourne une chaîne représentant l'exception actuelle.Creates and returns a string representation of the current exception.

(Inherited from Exception)

Événements

SerializeObjectState SerializeObjectState SerializeObjectState SerializeObjectState

Se produit quand une exception est sérialisée pour créer un objet d'état d'exception qui contient des données sérialisées concernant l'exception.Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.

(Inherited from Exception)

S’applique à