다음을 통해 공유


DeliveryFailure 열거형

정의

큐에서 읽은 메시지에 대해 사용 가능한 배달 실패 형식을 지정합니다.

public enum class DeliveryFailure
public enum DeliveryFailure
type DeliveryFailure = 
Public Enum DeliveryFailure
상속
DeliveryFailure

필드

AccessDenied 32772

발신자에게 대상 큐에 메시지를 배치할 액세스 권한이 없습니다.

BadDestinationQueue 32768

대상 큐를 찾을 수 없습니다.

BadEncryption 32775

대상 큐 관리자가 메시지를 해독할 수 없습니다.

BadSignature 32774

첨부된 서명이 잘못되었으므로 대상 큐 관리자가 메시지를 인증할 수 없습니다.

CouldNotEncrypt 32776

소스 큐 관리자가 메시지를 암호화할 수 없습니다.

HopCountExceeded 32773

중간 서버의 수를 나타내는 메시지 홉 개수가 초과되었습니다.

NotTransactionalMessage 32778

비트랜잭션 메시지가 트랜잭션 큐에 전송되었습니다.

NotTransactionalQueue 32777

트랜잭션 메시지가 비트랜잭션 큐에 전송되었습니다.

Purged 32769

대상 큐에 도달하기 전에 메시지가 지워졌습니다.

QueueDeleted 49152

메시지가 애플리케이션에 배달되기 전에 대상 큐가 삭제되었습니다.

QueueExceedMaximumSize 32771

대상 큐가 가득 차서 메시지가 배달되지 않았습니다.

QueuePurged 49153

큐가 비워졌으며 메시지가 더 이상 존재하지 않습니다.

ReachQueueTimeout 32770

시간 제한을 초과하기 전에 메시지가 대상 큐에 도달하지 않았습니다.

ReceiveTimeout 49154

메시지가 애플리케이션으로 제시간에 배달되지 않았습니다.

Unknown 0

알 수 없는 오류가 발생했습니다.

예제

아래 예제에서는 서비스 작업 내에서 메시지의 DeliveryFailure에 액세스하는 방법을 보여 줍니다.

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

설명

DeliveryFailure 속성을 가져와 메시지 배달에 실패하여 배달 못 한 편지 큐로 보내진 이유를 확인할 수 있습니다. 배달 못 한 편지 큐에서 메시지 처리에 대 한 자세한 내용은 참조 하세요. 배달 못 한 편지 큐 메시지 전송 오류 처리를 사용 하 여입니다.

적용 대상

추가 정보