MessageFault Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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. |