你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
SubscriptionClient 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
SubscriptionClient 可用于与服务总线订阅的所有基本交互。
public class SubscriptionClient : Microsoft.Azure.ServiceBus.ClientEntity, Microsoft.Azure.ServiceBus.ISubscriptionClient
type SubscriptionClient = class
inherit ClientEntity
interface ISubscriptionClient
interface IReceiverClient
interface IClientEntity
Public Class SubscriptionClient
Inherits ClientEntity
Implements ISubscriptionClient
- 继承
- 实现
示例
创建新的 SubscriptionClient
ISubscriptionClient subscriptionClient = new SubscriptionClient(
namespaceConnectionString,
topicName,
subscriptionName,
ReceiveMode.PeekLock,
RetryExponential);
注册消息处理程序,该处理程序将在每次收到消息时调用。
subscriptionClient.RegisterMessageHandler(
async (message, token) =>
{
// Process the message
Console.WriteLine($"Received message: SequenceNumber:{message.SystemProperties.SequenceNumber} Body:{Encoding.UTF8.GetString(message.Body)}");
// Complete the message so that it is not received again.
// This can be done only if the subscriptionClient is opened in ReceiveMode.PeekLock mode.
await subscriptionClient.CompleteAsync(message.SystemProperties.LockToken);
},
async (exceptionEvent) =>
{
// Process the exception
Console.WriteLine("Exception = " + exceptionEvent.Exception);
return Task.CompletedTask;
});
注解
它使用 AMQP 协议与服务总线通信。 用于 MessageReceiver 高级功能集。
构造函数
属性
ClientId |
获取用于标识此客户端的 ID。 这可用于关联日志和异常。 (继承自 ClientEntity) |
IsClosedOrClosing |
如果客户端关闭或关闭,则返回 true。 (继承自 ClientEntity) |
OperationTimeout |
持续时间,之后单个操作将超时。 |
OwnsConnection |
如果拥有连接,则返回 true;如果共享连接,则返回 false。 (继承自 ClientEntity) |
Path |
获取订阅客户端的格式化路径。 |
PrefetchCount |
在应用程序使用 Receive 请求消息时和之前,预提取旨在使消息随时可供本地检索,从而加快消息流的速度。 设置非零值预提取预提取消息数。 将值设置为零会关闭预提取。 默认值为 0。 |
ReceiveMode |
获取 ReceiveMode SubscriptionClient 的 。 |
RegisteredPlugins |
获取此 SubscriptionClient 当前注册的插件的列表。 |
RetryPolicy |
获取客户端 RetryPolicy 上定义的 。 (继承自 ClientEntity) |
ServiceBusConnection |
服务总线命名空间的连接对象。 |
SubscriptionName |
获取订阅的名称。 |
TopicPath |
获取相应主题的路径。 |