DeliveryStatus 枚举

定义

一个枚举,指定消息传递结果不确定或未传递消息时消息的传递状态。

public enum class DeliveryStatus
public enum DeliveryStatus
type DeliveryStatus = 
Public Enum DeliveryStatus
继承
DeliveryStatus

字段

名称 说明
InDoubt 0

消息传递结果不确定。

NotDelivered 1

消息未被传递。

示例

下面的示例演示如何访问服务操作中的消息的 DeliveryStatus

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

注解

发送到队列的消息可能因为没有被传递或队列管理器不确定传递结果而进入死信队列。 DeliveryStatus 是从死信队列中读取消息时获取消息传递状态的一种方式。

适用于