Freigeben über


DeliveryFailure Enumeration

Definition

Gibt die möglichen Typen der Zustellfehler für eine Nachricht an, die aus der Warteschlange gelesen wird.

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

Felder

AccessDenied 32772

Der Absender hat keine Zugriffsrechte auf das Platzieren von Nachrichten in der Zielwarteschlange.

BadDestinationQueue 32768

Die Zielwarteschlange wurde nicht gefunden.

BadEncryption 32775

Der Zielwarteschlangen-Manager kann die Nachricht nicht entschlüsseln.

BadSignature 32774

Der Zielwarteschlangen-Manager kann die Nachricht nicht authentifizieren, da die angehängte Signatur ungültig ist.

CouldNotEncrypt 32776

Der Quellwarteschlangen-Manager kann die Meldung nicht verschlüsseln.

HopCountExceeded 32773

Die Nachrichten-Hop-Anzahl, die die Anzahl von zwischengeschalteten Servern angibt, wurde überstiegen.

NotTransactionalMessage 32778

Eine nicht transaktionale Nachricht wurde an eine transaktionale Warteschlange gesendet.

NotTransactionalQueue 32777

Eine transaktionale Nachricht wurde an eine nicht transaktionale Warteschlange gesendet.

Purged 32769

Die Nachricht wurde vor dem Erreichen der Zielwarteschlange gelöscht.

QueueDeleted 49152

Die Zielwarteschlange wurde gelöscht, bevor die Nachricht der Anwendung zugestellt werden konnte.

QueueExceedMaximumSize 32771

Die Nachricht wurde nicht zugestellt, da die Zielwarteschlange voll ist.

QueuePurged 49153

Die Warteschlange wurde gelöscht, und die Nachricht ist nicht mehr vorhanden.

ReachQueueTimeout 32770

Die Nachricht hat die Zielwarteschlange vor dem Timeout nicht erreicht.

ReceiveTimeout 49154

Die Nachricht wurde nicht pünktlich zur Anwendung zugestellt.

Unknown 0

Es ist ein unbekannter Fehler aufgetreten.

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie auf den DeliveryFailure einer Nachricht innerhalb eines Dienstvorgangs zugegriffen wird.

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

Hinweise

Sie können die DeliveryFailure-Eigenschaft abrufen, um zu bestimmen, warum die Zustellung einer Nachricht fehlgeschlagen ist und an die Warteschlange für unzustellbare Nachrichten gesendet wurde. Weitere Informationen zur Nachrichtenverarbeitung in einer Warteschlange für unzustellbare Nachrichten finden Sie unter Verwenden von Dead-Letter Warteschlangen zum Behandeln von Nachrichtenübertragungsfehlern.

Gilt für:

Weitere Informationen