MessageFault Klasa

Definicja

Reprezentuje reprezentację w pamięci błędu protokołu SOAP, który można przekazać w celu CreateMessage utworzenia komunikatu zawierającego błąd.

public ref class MessageFault abstract
public abstract class MessageFault
type MessageFault = class
Public MustInherit Class MessageFault
Dziedziczenie
MessageFault

Przykłady

Poniższy przykład kodu przedstawia najbardziej typowe użycie metody MessageFault. Zarówno obiekt ProvideFault , jak i HandleError przekazany MessageFault , który można zmodyfikować i powrócić do systemu (w przypadku ProvideFault) lub używany do wykonywania niestandardowego zachowania związanego z błędami (w przypadku HandleError).

W tym przykładzie ProvideFault metoda konwertuje wszystkie Exception obiekty na MessageFault obiekt zawierający FaultException<TDetail> obiekt typu GreetingFault i zwraca obiekt dostosowany MessageFault do programu WCF.

#region IErrorHandler Members
public bool HandleError(Exception error)
{
  Console.WriteLine("HandleError called.");
  // Returning true indicates you performed your behavior.
  return true;
}

// This is a trivial implementation that converts Exception to FaultException<GreetingFault>.
public void ProvideFault(
  Exception error,
  MessageVersion ver,
  ref Message msg
)
{
  Console.WriteLine("ProvideFault called. Converting Exception to GreetingFault....");
  FaultException<GreetingFault> fe
    = new FaultException<GreetingFault>(new GreetingFault(error.Message));
  MessageFault fault = fe.CreateMessageFault();
  msg = Message.CreateMessage(
    ver,
    fault,
    "http://microsoft.wcf.documentation/ISampleService/SampleMethodGreetingFaultFault"
  );
}
#endregion
#Region "IErrorHandler Members"
Public Function HandleError(ByVal [error] As Exception) As Boolean Implements IErrorHandler.HandleError
  Console.WriteLine("HandleError called.")
  ' Returning true indicates you performed your behavior.
  Return True
End Function

' This is a trivial implementation that converts Exception to FaultException<GreetingFault>.
Public Sub ProvideFault(ByVal [error] As Exception, ByVal ver As MessageVersion, ByRef msg As Message) Implements IErrorHandler.ProvideFault
  Console.WriteLine("ProvideFault called. Converting Exception to GreetingFault....")
  Dim fe As New FaultException(Of GreetingFault)(New GreetingFault([error].Message))
  Dim fault As MessageFault = fe.CreateMessageFault()
  msg = Message.CreateMessage(ver, fault, "http://microsoft.wcf.documentation/ISampleService/SampleMethodGreetingFaultFault")
End Sub
#End Region

Uwagi

MessageFault Użyj klasy w dowolnym momencie, gdy potrzebujesz błędu protokołu SOAP w pamięci, który można zmodyfikować i użyć do utworzenia komunikatu SOAP zawierającego informacje o błędzie.

MessageFault Zazwyczaj klasa jest używana podczas implementowania interfejsuIErrorHandler. W takim przypadku Windows Communication Foundation (WCF) przekazuje MessageFault obiekt i używasz go do określonych potrzeb (na przykład można dostosować MessageFault obiekt lub do rejestrowania informacji o błędach). MessageFault Można jednak używać w dowolnym miejscu, w których wymagana jest niestandardowa obsługa komunikatów o błędach protokołu SOAP.

Konstruktory

MessageFault()

Po wywołaniu w klasie pochodnej inicjuje nowe wystąpienie MessageFault klasy.

Właściwości

Actor

Pobiera lub ustawia wartość aktora.

Code

Pobiera kod błędu PROTOKOŁU SOAP.

HasDetail

Pobiera wartość wskazującą, czy MessageFault obiekt szczegółów ma.

IsMustUnderstandFault

Pobiera wartość wskazującą, czy ta usterka została spowodowana przez błąd zrozumienia nagłówka protokołu SOAP.

Node

Pobiera węzeł SOAP zawierający informacje o tym, który węzeł SOAP w ścieżce komunikatu powoduje błąd.

Reason

Pobiera tekstowy opis błędu PROTOKOŁU SOAP.

Metody

CreateFault(FaultCode, FaultReason)

Zwraca nowy MessageFault obiekt, który używa określonego FaultCode obiektu i FaultReason .

CreateFault(FaultCode, FaultReason, Object)

Zwraca nowy MessageFault obiekt, który używa określonego FaultCodeobiektu , FaultReasoni szczegółów.

CreateFault(FaultCode, FaultReason, Object, XmlObjectSerializer)

Zwraca nowy MessageFault obiekt, który używa określonego FaultCodeobiektu , FaultReason, obiektu szczegółów i XmlObjectSerializer obiektów.

CreateFault(FaultCode, FaultReason, Object, XmlObjectSerializer, String)

Zwraca nowy MessageFault obiekt, który używa określonego FaultCodeobiektu , FaultReason, obiektu szczegółów, XmlObjectSerializeri aktora.

CreateFault(FaultCode, FaultReason, Object, XmlObjectSerializer, String, String)

Zwraca nowy MessageFault obiekt, który używa określonych FaultCodewartości , FaultReason, obiektu szczegółów, XmlObjectSerializeraktora i węzła.

CreateFault(FaultCode, String)

Zwraca nowy MessageFault obiekt, który używa określonego FaultCode i przyczyny błędu.

CreateFault(Message, Int32)

Zwraca nowy MessageFault obiekt, który używa określonego Message i określonego maksymalnego rozmiaru buforu dla buforu komunikatów.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetDetail<T>()

Zwraca obiekt szczegółowy błędu komunikatu.

GetDetail<T>(XmlObjectSerializer)

Zwraca obiekt szczegółów, który używa określonego XmlObjectSerializerobiektu .

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetReaderAtDetailContents()

XmlDictionaryReader Zwraca obiekt, który jest umieszczony na obiekcie szczegółów obiektu MessageFault.

GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
OnGetReaderAtDetailContents()

Po wywołaniu w klasie pochodnej zwraca XmlDictionaryReader obiekt, który jest umieszczony na obiekcie szczegółów obiektu MessageFault.

OnWriteDetail(XmlDictionaryWriter, EnvelopeVersion)

Wywoływane przed zapisaniem zawartości szczegółów.

OnWriteDetailContents(XmlDictionaryWriter)

Po przesłonięciu w klasie pochodnej bez abstrakcyjnej zapisuje zawartość elementu szczegółów.

OnWriteStartDetail(XmlDictionaryWriter, EnvelopeVersion)

Zapisuje element startowy przy użyciu określonej XmlDictionaryWriter wersji koperty protokołu SOAP.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
WasHeaderNotUnderstood(MessageHeaders, String, String)

Pobiera wartość wskazującą, czy nagłówki komunikatów SOAP zostały zrozumiane.

WriteTo(XmlDictionaryWriter, EnvelopeVersion)

Zapisuje błąd komunikatu, który używa określonej XmlDictionaryWriter wersji koperty protokołu SOAP.

WriteTo(XmlWriter, EnvelopeVersion)

Zapisuje błąd komunikatu, który używa określonej XmlWriter wersji koperty protokołu SOAP.

Dotyczy