DeliveryFailure Énumération
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Spécifie les types d'échec de remise possibles pour la lecture d'un message de la file d'attente.
public enum class DeliveryFailure
public enum DeliveryFailure
type DeliveryFailure =
Public Enum DeliveryFailure
- Héritage
Champs
AccessDenied | 32772 | L'expéditeur ne dispose pas de droits d'accès pour placer des messages dans la file d'attente de destination. |
BadDestinationQueue | 32768 | La file d'attente de destination est introuvable. |
BadEncryption | 32775 | Le gestionnaire de files d'attente de destination ne peut pas déchiffrer le message. |
BadSignature | 32774 | Le gestionnaire de files d'attente de destination ne peut pas authentifier le message car la signature attachée n'est pas valide. |
CouldNotEncrypt | 32776 | Le gestionnaire de files d'attente source ne peut pas chiffrer le message. |
HopCountExceeded | 32773 | Le nombre de sauts de message a été dépassé, ce qui indique le nombre de serveurs intermédiaires. |
NotTransactionalMessage | 32778 | Un message non transactionnel a été envoyé à une file d'attente transactionnelle. |
NotTransactionalQueue | 32777 | Un message transactionnel a été envoyé à une file d'attente non transactionnelle. |
Purged | 32769 | Le message a été supprimé avant d'atteindre la file d'attente de destination. |
QueueDeleted | 49152 | La file d'attente de destination a été supprimée avant que le message puisse être remis à l'application. |
QueueExceedMaximumSize | 32771 | Le message n'a pas été remis car la file d'attente de destination est complète. |
QueuePurged | 49153 | La file d'attente a été vidée et le message n'existe plus. |
ReachQueueTimeout | 32770 | Le message n'a pas atteint la file d'attente de destination avant dépassement du délai d'attente. |
ReceiveTimeout | 49154 | Le message n'a pas été remis dans les temps à l'application. |
Unknown | 0 | Une erreur inconnue s'est produite. |
Exemples
L'exemple suivant indique comment accéder à l'DeliveryFailure d'un message dans une opération de service.
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
Remarques
Vous pouvez obtenir la propriété DeliveryFailure pour déterminer la raison de l'échec de la remise d'un message et de l'envoi de ce dernier dans la file d'attente de lettres mortes. Pour plus d’informations sur le traitement des messages dans une file d’attente de lettres mortes, consultez Utilisation de Dead-Letter files d’attente pour gérer les échecs de transfert de messages.