Table of Contents

Class Message.SystemPropertiesCollection

Namespace
Microsoft.Azure.ServiceBus
Assembly
Microsoft.Azure.ServiceBus.dll

A collection used to store properties which are set by the Service Bus service.

public sealed class Message.SystemPropertiesCollection
Inheritance
Message.SystemPropertiesCollection
Inherited Members

Constructors

SystemPropertiesCollection()

public SystemPropertiesCollection()

Properties

DeadLetterSource

Gets the name of the queue or subscription that this message was enqueued on, before it was deadlettered.

public string DeadLetterSource { get; }

Property Value

string

Remarks

Only set in messages that have been dead-lettered and subsequently auto-forwarded from the dead-letter queue to another entity. Indicates the entity in which the message was dead-lettered. This property is read-only.

DeliveryCount

Get the current delivery count.

public int DeliveryCount { get; }

Property Value

int

This value starts at 1.

Remarks

Number of deliveries that have been attempted for this message. The count is incremented when a message lock expires, or the message is explicitly abandoned by the receiver. This property is read-only.

EnqueuedSequenceNumber

Gets or sets the original sequence number of the message.

public long EnqueuedSequenceNumber { get; }

Property Value

long

The enqueued sequence number of the message.

Remarks

For messages that have been auto-forwarded, this property reflects the sequence number that had first been assigned to the message at its original point of submission. This property is read-only.

EnqueuedTimeUtc

Gets or sets the date and time of the sent time in UTC.

public DateTime EnqueuedTimeUtc { get; }

Property Value

DateTime

The enqueue time in UTC.

Remarks

The UTC instant at which the message has been accepted and stored in the entity. This value can be used as an authoritative and neutral arrival time indicator when the receiver does not want to trust the sender's clock. This property is read-only.

IsLockTokenSet

Specifies whether or not there is a lock token set on the current message.

public bool IsLockTokenSet { get; }

Property Value

bool

Remarks

A lock token will only be specified if the message was received using PeekLock

IsReceived

Specifies if the message has been obtained from the broker.

public bool IsReceived { get; }

Property Value

bool

LockToken

Gets the lock token for the current message.

public string LockToken { get; }

Property Value

string

Remarks

The lock token is a reference to the lock that is being held by the broker in PeekLock mode. Locks are used to explicitly settle messages as explained in the product documentation in more detail. The token can also be used to pin the lock permanently through the Deferral API and, with that, take the message out of the regular delivery state flow. This property is read-only.

LockedUntilUtc

Gets the date and time in UTC until which the message will be locked in the queue/subscription.

public DateTime LockedUntilUtc { get; }

Property Value

DateTime

The date and time until which the message will be locked in the queue/subscription.

Remarks

For messages retrieved under a lock (peek-lock receive mode, not pre-settled) this property reflects the UTC instant until which the message is held locked in the queue/subscription. When the lock expires, the DeliveryCount is incremented and the message is again available for retrieval. This property is read-only.

SequenceNumber

Gets the unique number assigned to a message by Service Bus.

public long SequenceNumber { get; }

Property Value

long

Remarks

The sequence number is a unique 64-bit integer assigned to a message as it is accepted and stored by the broker and functions as its true identifier. For partitioned entities, the topmost 16 bits reflect the partition identifier. Sequence numbers monotonically increase. They roll over to 0 when the 48-64 bit range is exhausted. This property is read-only.