Bagikan melalui


MessageFault Kelas

Definisi

Mewakili representasi dalam memori dari kesalahan SOAP yang dapat diteruskan ke CreateMessage untuk membuat pesan yang berisi kesalahan.

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

Contoh

Contoh kode berikut menunjukkan penggunaan yang paling umum dari MessageFault. ProvideFault Baik dan HandleError meneruskan MessageFault objek yang dapat dimodifikasi dan dikembalikan ke sistem (dalam kasus ProvideFault) atau digunakan untuk melakukan beberapa perilaku terkait kesalahan kustom (dalam kasus HandleError).

Dalam contoh ini, ProvideFault metode mengonversi semua Exception objek menjadi MessageFault objek yang berisi FaultException<TDetail> objek jenis GreetingFault dan mengembalikan yang disesuaikan MessageFault ke 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

Keterangan

MessageFault Gunakan kelas kapan saja Anda memerlukan kesalahan SOAP dalam memori yang dapat dimodifikasi dan digunakan untuk membuat pesan SOAP yang berisi informasi kesalahan.

Biasanya, MessageFault kelas digunakan saat mengimplementasikan IErrorHandler antarmuka. Dalam hal ini, Windows Communication Foundation (WCF) melewati MessageFault objek dan Anda menggunakannya untuk kebutuhan spesifik Anda (misalnya, Anda dapat menyesuaikan atau untuk mencatat MessageFault informasi kesalahan). Namun, MessageFault dapat digunakan di mana saja penanganan pesan kesalahan SOAP kustom diperlukan.

Konstruktor

MessageFault()

Saat dipanggil di kelas turunan, menginisialisasi instans MessageFault baru kelas.

Properti

Actor

Mendapatkan atau menetapkan nilai aktor.

Code

Mendapatkan kode kesalahan SOAP.

HasDetail

Mendapatkan nilai yang menunjukkan apakah MessageFault memiliki objek detail.

IsMustUnderstandFault

Mendapatkan nilai yang menunjukkan apakah kesalahan ini disebabkan oleh kegagalan untuk memahami header SOAP.

Node

Mendapatkan simpul SOAP yang berisi informasi tentang simpul SOAP mana pada jalur pesan yang menyebabkan kesalahan.

Reason

Mendapatkan deskripsi tekstual tentang kesalahan SOAP.

Metode

CreateFault(FaultCode, FaultReason)

Mengembalikan objek baru MessageFault yang menggunakan objek dan FaultReason yang ditentukanFaultCode.

CreateFault(FaultCode, FaultReason, Object)

Mengembalikan objek baru MessageFault yang menggunakan objek detail , , FaultReasondan yang ditentukanFaultCode.

CreateFault(FaultCode, FaultReason, Object, XmlObjectSerializer)

Mengembalikan objek baru MessageFault yang menggunakan objek , , FaultReasonobjek detail, dan XmlObjectSerializer yang ditentukanFaultCode.

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

Mengembalikan objek baru MessageFault yang menggunakan objek , , FaultReasonobjek detail, XmlObjectSerializer, dan aktor yang ditentukanFaultCode.

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

Mengembalikan objek baru MessageFault yang menggunakan nilai , , FaultReasonobjek detail, XmlObjectSerializer, aktor, dan simpul yang ditentukanFaultCode.

CreateFault(FaultCode, String)

Mengembalikan objek baru MessageFault yang menggunakan alasan yang ditentukan FaultCode dan kesalahan.

CreateFault(Message, Int32)

Mengembalikan objek baru MessageFault yang menggunakan ukuran buffer maksimum yang ditentukan Message dan yang ditentukan untuk buffer pesan.

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetDetail<T>()

Mengembalikan objek detail kesalahan pesan.

GetDetail<T>(XmlObjectSerializer)

Mengembalikan objek detail yang menggunakan yang ditentukan XmlObjectSerializer.

GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetReaderAtDetailContents()

Mengembalikan XmlDictionaryReader objek yang diposisikan pada objek detail .MessageFault

GetType()

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
OnGetReaderAtDetailContents()

Ketika dipanggil di kelas turunan, mengembalikan XmlDictionaryReader objek yang diposisikan pada objek detail .MessageFault

OnWriteDetail(XmlDictionaryWriter, EnvelopeVersion)

Dipanggil sebelum menulis konten detail.

OnWriteDetailContents(XmlDictionaryWriter)

Ketika ditimpa di kelas turunan non-abstrak, tulis konten elemen detail.

OnWriteStartDetail(XmlDictionaryWriter, EnvelopeVersion)

Menulis elemen mulai menggunakan versi amplop SOAP dan yang ditentukan XmlDictionaryWriter .

ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)
WasHeaderNotUnderstood(MessageHeaders, String, String)

Mendapatkan nilai yang menunjukkan apakah header pesan SOAP dipahami.

WriteTo(XmlDictionaryWriter, EnvelopeVersion)

Menulis kesalahan pesan yang menggunakan versi amplop yang ditentukan XmlDictionaryWriter dan SOAP.

WriteTo(XmlWriter, EnvelopeVersion)

Menulis kesalahan pesan yang menggunakan versi amplop yang ditentukan XmlWriter dan SOAP.

Berlaku untuk