DeliveryFailure Sabit listesi

Tanım

Kuyruktan okunan bir ileti için olası teslim hatası türlerini belirtir.

public enum class DeliveryFailure
public enum DeliveryFailure
type DeliveryFailure = 
Public Enum DeliveryFailure
Devralma
DeliveryFailure

Alanlar

AccessDenied 32772

Gönderenin iletileri hedef kuyruğa yerleştirmek için erişim hakları yok.

BadDestinationQueue 32768

Hedef kuyruk bulunamadı.

BadEncryption 32775

Hedef kuyruk yöneticisi iletinin şifresini çözemiyor.

BadSignature 32774

Hedef kuyruk yöneticisi, ekli imza geçersiz olduğundan iletinin kimliğini doğrulayamıyor.

CouldNotEncrypt 32776

Kaynak kuyruk yöneticisi iletiyi şifreleyemiyor.

HopCountExceeded 32773

İleti atlama sayısı aşıldı ve bu da ara sunucuların sayısını gösterir.

NotTransactionalMessage 32778

İşlem kuyruğuna işlem dışı bir ileti gönderildi.

NotTransactionalQueue 32777

İşlemsel olmayan bir kuyruğa işlem iletisi gönderildi.

Purged 32769

İleti hedef kuyruğa ulaşmadan önce temizlendi.

QueueDeleted 49152

İletinin uygulamaya teslim edilebilmesi için hedef kuyruk silindi.

QueueExceedMaximumSize 32771

Hedef kuyruk dolu olduğundan ileti teslim edilmedi.

QueuePurged 49153

Kuyruk temizlendi ve ileti artık yok.

ReachQueueTimeout 32770

İleti zaman aşımına uğramadan önce hedef kuyruğa ulaşmadı.

ReceiveTimeout 49154

İleti uygulamaya zamanında teslim edilmedi.

Unknown 0

Bilinmeyen bir hata oluştu.

Örnekler

Aşağıdaki örnekte, bir hizmet işlemi içinde iletinin DeliveryFailure öğesine nasıl erişildi gösterilmektedir.

public void SimpleSubmitPurchaseOrder(PurchaseOrder po)
{
    Console.WriteLine("Submitting purchase order did not succeed ", po);
    MsmqMessageProperty mqProp = OperationContext.Current.IncomingMessageProperties[MsmqMessageProperty.Name] as MsmqMessageProperty;

    Console.WriteLine("Message Delivery Status: {0} ", mqProp.DeliveryStatus);
    Console.WriteLine("Message Delivery Failure: {0}", mqProp.DeliveryFailure);
    Console.WriteLine();
}
<OperationBehavior(TransactionScopeRequired := True, TransactionAutoComplete := True)> _
Public Sub SimpleSubmitPurchaseOrder(ByVal po As PurchaseOrder)
    Console.WriteLine("Submitting purchase order did not succeed ", po)
    Dim mqProp As MsmqMessageProperty = TryCast(OperationContext.Current.IncomingMessageProperties(MsmqMessageProperty.Name), MsmqMessageProperty)

    Console.WriteLine("Message Delivery Status: {0} ", mqProp.DeliveryStatus)
    Console.WriteLine("Message Delivery Failure: {0}", mqProp.DeliveryFailure)
    Console.WriteLine()
End Sub

Açıklamalar

İletinin DeliveryFailure teslim edilemediğini ve teslim edilemeyen ileti kuyruğuna neden gönderildiğini belirlemek için özelliğini alabilirsiniz. Teslim edilemeyen bir kuyrukta ileti işleme hakkında ek bilgi için bkz. İleti Aktarımı Hatalarını İşlemek için Dead-Letter Kuyruklarını Kullanma.

Şunlara uygulanır

Ayrıca bkz.