你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

MessageReceiver 类

定义

MessageReceiver 类用于从消息容器接收消息并确认它们。

public abstract class MessageReceiver : Microsoft.ServiceBus.Messaging.MessagingEntityClient
type MessageReceiver = class
    inherit MessagingEntityClient
Public MustInherit Class MessageReceiver
Inherits MessagingEntityClient
继承
派生

注解

请注意,默认情况下,消息传递机制不会提供可靠的消息接收。 服务总线在消息离开系统后将其删除。 对于有保证的传递,可以使用 PeekLock 传递模式。

//********************************************************************************
//                             Sending messages to a Queue
//********************************************************************************

// Create a sender
MessageSender myMessageSender = myQueueClient.CreateSender(SendMode.Default);

// Send messages
List<string> Issues = new List<string>();
foreach (var issue in Issues)
{
myMessageSender.Send(new BrokeredMessage(issue));
}
//********************************************************************************
//                           Recieving messages from a Queue
//********************************************************************************

// Create a receiver
MessageReceiver myMessageReceiver = 
myQueueClient.CreateReceiver(ReceiveMode.PeekLock);

// Receive messages
for (int count = 0; count < Issues.Count; count++)
{
var message = myMessageReceiver.Receive();
message.Complete();
}
//********************************************************************************
//                    Receiving messages from a particular session
//********************************************************************************

// Create subscription client
SubscriptionClient mySubscriptionClient = factory.CreateSubscriptionClient(mySubscription);

// Create a receiver
MessageReceiver myMessageReceiver = mySubscriptionClient.AcceptMessageSession(ReceiveMode.PeekLock);

// Receive messages
for (int count = 0; count *lt; Issues.Count; count++)
{
var message = myMessageReceiver.Receive();
message.Complete();
}

属性

BatchFlushInterval

获取批刷新间隔。

BatchingEnabled

获取一个值,该值指示是否启用批处理。

IsClosed

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
LastPeekedSequenceNumber

获取或设置上次查看的消息的序列号。

Mode

获取消息接收模式。

Path

获取队列、主题或订阅相对于 MessagingFactory 基址的路径。

(继承自 MessagingEntityClient)
PrefetchCount

获取或设置消息接收方可以同时请求的消息数。

RefreshEntityRuntimeDescription

MessageReceiver 类用于从消息容器接收消息并确认它们。

RetryPolicy

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
SupportsGetRuntimeEntityDescription

MessageReceiver 类用于从消息容器接收消息并确认它们。

ThisLock

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)

方法

Abandon(Guid)

放弃消息并放弃消息锁所有权。

Abandon(Guid, IDictionary<String,Object>)

放弃消息并放弃消息锁所有权。

AbandonAsync(Guid)

异步放弃消息并放弃消息锁所有权。

AbandonAsync(Guid, IDictionary<String,Object>)

异步放弃消息并放弃消息锁所有权。

Abort()

对消息传递实体执行中止功能。

(继承自 ClientEntity)
Close()

将清理消息发送到服务总线,以指示实体的使用已完成。

(继承自 ClientEntity)
CloseAsync()

以异步方式将清理消息发送到服务总线,以指示实体的使用已完成。

(继承自 ClientEntity)
Complete(Guid)

完成对消息的接收操作。 如果使用 AMQP,则只能对此接收方收到的消息执行此操作。

CompleteAsync(Guid)

异步完成对消息的接收操作。 如果使用 AMQP,则只能对此接收方收到的消息执行此操作。

CompleteBatch(IEnumerable<Guid>)

完成对一批消息的接收操作。 如果使用 AMQP,则只能对此接收方收到的消息执行此操作。

CompleteBatchAsync(IEnumerable<Guid>)

异步完成对一批消息的接收操作。 如果使用 AMQP,则只能对此接收方收到的消息执行此操作。

DeadLetter(Guid)

将未传递的消息移动到死信队列。

DeadLetter(Guid, IDictionary<String,Object>)

将未传递的消息移动到死信队列。

DeadLetter(Guid, String, String)

将未传递的消息移动到死信队列。

DeadLetterAsync(Guid)

将未传递的消息异步移动到死信队列。

DeadLetterAsync(Guid, IDictionary<String,Object>)

将未传递的消息异步移动到死信队列。

DeadLetterAsync(Guid, String, String)

将未传递的消息异步移动到死信队列。

Defer(Guid)

指示接收方希望延迟消息的处理。

Defer(Guid, IDictionary<String,Object>)

指示接收方希望延迟消息的处理。

DeferAsync(Guid)

异步延迟消息的处理。

DeferAsync(Guid, IDictionary<String,Object>)

异步延迟消息的处理。

Fault()

仅限内部使用。 请勿从此类继承。

(继承自 ClientEntity)
GetLockToken(BrokeredMessage)

获取绑定到消息的锁标记。

GetLockTokens(IEnumerable<BrokeredMessage>)

从指定的消息集合中获取锁标记的集合。

GetProperty<T>()

MessageReceiver 类用于从消息容器接收消息并确认它们。

OnAbandon(TrackingContext, IEnumerable<Guid>, IDictionary<String,Object>, TimeSpan)

执行放弃操作。

OnAbort()

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
OnBeginAbandon(TrackingContext, IEnumerable<Guid>, IDictionary<String,Object>, Boolean, TimeSpan, AsyncCallback, Object)

在调用 OnAbandon 或 BeginAbandon 操作时执行。

OnBeginClose(TimeSpan, AsyncCallback, Object)

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
OnBeginComplete(TrackingContext, IEnumerable<ArraySegment<Byte>>, Boolean, TimeSpan, AsyncCallback, Object)

在调用 OnComplete 或 BeginComplete 操作时执行。

OnBeginComplete(TrackingContext, IEnumerable<Guid>, Boolean, TimeSpan, AsyncCallback, Object)

在调用 OnComplete 或 BeginComplete 操作时执行。

OnBeginDeadLetter(TrackingContext, IEnumerable<Guid>, IDictionary<String,Object>, String, String, Boolean, TimeSpan, AsyncCallback, Object)

在调用 OnDeadLetter 或 BeginDeadLetter 操作时执行。

OnBeginDefer(TrackingContext, IEnumerable<Guid>, IDictionary<String,Object>, Boolean, TimeSpan, AsyncCallback, Object)

在调用 OnDefer 或 BeginDefer 操作时执行。

OnBeginOpen(TimeSpan, AsyncCallback, Object)

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
OnBeginPeek(TrackingContext, Int64, Int32, TimeSpan, AsyncCallback, Object)

调用 BeginPeek 操作时执行。

OnBeginRenewMessageLocks(TrackingContext, IEnumerable<Guid>, Boolean, TimeSpan, AsyncCallback, Object)

对锁定消息调用 OnBegin 操作时执行。

OnBeginTryReceive(TrackingContext, IEnumerable<Int64>, TimeSpan, AsyncCallback, Object)

执行 begin try receive 操作。

OnBeginTryReceive(TrackingContext, Int32, TimeSpan, AsyncCallback, Object)

执行 begin try receive 操作。

OnBeginTryReceive2(TrackingContext, Int32, TimeSpan, AsyncCallback, Object)

执行 begin try receive 操作。

OnBeginTryReceiveEventData(TrackingContext, Int32, TimeSpan, AsyncCallback, Object)

调用事件数据的 OnTryReceive 或 BeginTryReceive 操作时执行。

OnClose(TimeSpan)

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
OnClosed()

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
OnComplete(TrackingContext, IEnumerable<Guid>, TimeSpan)

执行完整操作。

OnDeadLetter(TrackingContext, IEnumerable<Guid>, IDictionary<String,Object>, String, String, TimeSpan)

执行移动到死信队列操作。

OnDefer(TrackingContext, IEnumerable<Guid>, IDictionary<String,Object>, TimeSpan)

执行延迟操作。

OnEndAbandon(IAsyncResult)

执行结束放弃操作。

OnEndClose(IAsyncResult)

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
OnEndComplete(IAsyncResult)

执行结束完成操作。

OnEndDeadLetter(IAsyncResult)

执行结束移动到死信队列操作。

OnEndDefer(IAsyncResult)

执行结束延迟操作。

OnEndOpen(IAsyncResult)

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
OnEndPeek(IAsyncResult)

执行 EndPeek 操作。

OnEndRenewMessageLocks(IAsyncResult)

对消息锁执行 EndRenew 操作。

OnEndTryReceive(IAsyncResult, IEnumerable<BrokeredMessage>)

执行 end try receive 操作。

OnEndTryReceive2(IAsyncResult, IEnumerable<BrokeredMessage>)

执行 end try receive 操作。

OnEndTryReceiveEventData(IAsyncResult, IEnumerable<EventData>)

对事件数据执行 EndTryReceive 操作。

OnFaulted()

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
OnMessage(Action<BrokeredMessage>, OnMessageOptions)

在事件驱动的消息泵中处理消息。

OnMessageAsync(Func<BrokeredMessage,Task>, OnMessageOptions)

在事件驱动的消息泵中异步处理消息。

OnOpen(TimeSpan)

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
OnOpened()

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
OnPeek(TrackingContext, Int64, Int32, TimeSpan)

调用 Peek 操作时执行。

OnRenewMessageLocks(TrackingContext, IEnumerable<Guid>, TimeSpan)

对锁定消息执行“续订”操作。

OnTryReceive(TrackingContext, IEnumerable<Int64>, TimeSpan, IEnumerable<BrokeredMessage>)

执行 try receive 操作。

OnTryReceive(TrackingContext, Int32, TimeSpan, IEnumerable<BrokeredMessage>)

执行 try receive 操作。

Peek()

在不更改接收方或消息源的状态的情况下读取下一条消息。

Peek(Int64)

在不更改接收方或消息源的状态的情况下读取下一条消息。

PeekAsync()

在不更改接收方或消息源的状态的情况下异步读取下一条消息。

PeekAsync(Int64)

在不更改接收方或消息源的状态的情况下异步读取下一条消息。

PeekBatch(Int32)

在不更改接收方或消息源的状态的情况下读取下一批消息。

PeekBatch(Int64, Int32)

在不更改接收方或消息源的状态的情况下读取下一批消息。

PeekBatchAsync(Int32)

在不更改接收方或消息源的状态的情况下异步读取下一批消息。

PeekBatchAsync(Int64, Int32)

在不更改接收方或消息源的状态的情况下异步读取下一批消息。

Receive()

BrokeredMessage从当前队列或主题接收 。

Receive(Int64)

接收来自当前队列或主题的延迟消息。 此方法仅适用于延迟消息,不适用于常规消息。

Receive(TimeSpan)

BrokeredMessage从当前队列或主题接收 。

ReceiveAsync()

异步接收来自当前队列或主题的消息。

ReceiveAsync(Int64)

异步接收来自当前队列或主题的延迟消息。 此方法仅适用于延迟消息,不适用于常规消息。

ReceiveAsync(TimeSpan)

异步接收来自当前队列或主题的消息。

ReceiveBatch(IEnumerable<Int64>)

接收一批消息。

ReceiveBatch(Int32)

接收一批消息。

ReceiveBatch(Int32, TimeSpan)

接收一批消息。

ReceiveBatchAsync(IEnumerable<Int64>)

异步接收一批消息。

ReceiveBatchAsync(Int32)

异步接收一批消息。

ReceiveBatchAsync(Int32, TimeSpan)

异步接收一批消息。

ThrowIfClosed()

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
ThrowIfDisposed()

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
ThrowIfDisposedOrImmutable()

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
ThrowIfDisposedOrNotOpen()

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)
ThrowIfFaulted()

MessageReceiver 类用于从消息容器接收消息并确认它们。

(继承自 ClientEntity)

适用于