你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
IMessageReceiver 接口
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
MessageReceiver 可用于从队列和订阅接收消息并确认它们。
public interface IMessageReceiver : Microsoft.Azure.ServiceBus.Core.IReceiverClient
type IMessageReceiver = interface
interface IReceiverClient
interface IClientEntity
Public Interface IMessageReceiver
Implements IReceiverClient
- 派生
- 实现
示例
创建新的 MessageReceiver 以接收来自订阅的消息
IMessageReceiver messageReceiver = new MessageReceiver(
namespaceConnectionString,
EntityNameHelper.FormatSubscriptionPath(topicName, subscriptionName),
ReceiveMode.PeekLock);
从订阅接收消息。
var message = await messageReceiver.ReceiveAsync();
await messageReceiver.CompleteAsync(message.SystemProperties.LockToken);
注解
MessageReceiver 提供在 或 SubscriptionClient中QueueClient找不到的高级功能。 例如, ReceiveAsync()它允许按需接收消息,但也要求使用 RenewLockAsync(Message)手动续订锁。
属性
ClientId |
获取用于标识此客户端的 ID。 这可用于关联日志和异常。 (继承自 IClientEntity) |
IsClosedOrClosing |
如果客户端已关闭或关闭,则返回 true。 (继承自 IClientEntity) |
LastPeekedSequenceNumber |
获取上次查看的消息的序列号。 |
OperationTimeout |
持续时间过后,单个操作将超时。 (继承自 IClientEntity) |
OwnsConnection |
如果拥有连接,则返回 true;如果共享连接,则返回 false。 (继承自 IClientEntity) |
Path |
获取实体路径。 (继承自 IClientEntity) |
PrefetchCount |
在应用程序使用 Receive 请求消息时和之前,预提取旨在使消息随时可供本地检索,从而加速消息流。 设置非零值预提取预提取消息数。 将值设置为零会关闭预提取。 默认值为 0。 (继承自 IReceiverClient) |
ReceiveMode |
ReceiveMode获取当前接收器的 。 (继承自 IReceiverClient) |
RegisteredPlugins |
获取此客户端当前注册的插件的列表。 (继承自 IClientEntity) |
ServiceBusConnection |
服务总线命名空间的连接对象。 (继承自 IClientEntity) |