ISubscriptionClient Interfaz
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
SubscriptionClient se puede usar para todas las interacciones básicas con una suscripción de Service Bus.
public interface ISubscriptionClient : Microsoft.Azure.ServiceBus.Core.IReceiverClient
type ISubscriptionClient = interface
interface IReceiverClient
interface IClientEntity
Public Interface ISubscriptionClient
Implements IReceiverClient
- Derivado
- Implementaciones
Ejemplos
Creación de un nuevo elemento SubscriptionClient
ISubscriptionClient subscriptionClient = new SubscriptionClient(
namespaceConnectionString,
topicName,
subscriptionName,
ReceiveMode.PeekLock,
RetryExponential);
Registre un controlador de mensajes que se invocará cada vez que se reciba un mensaje.
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;
});
Comentarios
Se usa MessageReceiver para un conjunto avanzado de funcionalidades.
Propiedades
ClientId |
Obtiene el identificador para identificar este cliente. Se puede usar para correlacionar registros y excepciones. (Heredado de IClientEntity) |
IsClosedOrClosing |
Devuelve true si el cliente está cerrado o cerrado. (Heredado de IClientEntity) |
OperationTimeout |
Duración después de la cual se expirarán las operaciones individuales. (Heredado de IClientEntity) |
OwnsConnection |
Devuelve true si la conexión es propiedad y false si se comparte la conexión. (Heredado de IClientEntity) |
Path |
Obtiene la ruta de acceso de la entidad. (Heredado de IClientEntity) |
PrefetchCount |
La captura previa acelera el flujo de mensajes con el objetivo de tener un mensaje disponible para la recuperación local cuando y antes de que la aplicación solicite una mediante Receive. Establecer una captura previa de valor distinto de cero prefetchCount número de mensajes. Al establecer el valor en cero, se desactiva la captura previa. El valor predeterminado es 0. (Heredado de IReceiverClient) |
ReceiveMode |
Obtiene el ReceiveMode objeto del receptor actual. (Heredado de IReceiverClient) |
RegisteredPlugins |
Obtiene una lista de complementos registrados actualmente para este cliente. (Heredado de IClientEntity) |
ServiceBusConnection |
Objeto de conexión al espacio de nombres de Service Bus. (Heredado de IClientEntity) |
SubscriptionName |
Obtiene el nombre de la suscripción. |
TopicPath |
Obtiene la ruta de acceso del tema para esta suscripción. |
Métodos
AbandonAsync(String, IDictionary<String,Object>) |
Abandona un Message mediante un token de bloqueo. Esto hará que el mensaje vuelva a estar disponible para su procesamiento. (Heredado de IReceiverClient) |
AddRuleAsync(RuleDescription) |
Agrega una regla a la suscripción actual para filtrar los mensajes que llegan del tema a la suscripción. |
AddRuleAsync(String, Filter) |
Agrega una regla a la suscripción actual para filtrar los mensajes que llegan del tema a la suscripción. |
CloseAsync() |
Cierra el cliente. Cierra las conexiones abiertas por ella. (Heredado de IClientEntity) |
CompleteAsync(String) |
Completa un Message mediante su token de bloqueo. Esto eliminará el mensaje de la cola. (Heredado de IReceiverClient) |
DeadLetterAsync(String, IDictionary<String,Object>) |
Mueve un mensaje a la subcola de mensajes fallidos. (Heredado de IReceiverClient) |
DeadLetterAsync(String, String, String) |
Mueve un mensaje a la subcola de mensajes fallidos. (Heredado de IReceiverClient) |
GetRulesAsync() |
Obtenga todas las reglas asociadas a la suscripción. |
RegisterMessageHandler(Func<Message,CancellationToken,Task>, Func<ExceptionReceivedEventArgs,Task>) |
Recibir mensajes continuamente de la entidad. Registra un controlador de mensajes y comienza un nuevo subproceso para recibir mensajes. El receptor espera este controlador(Func<T1,T2,TResult>) cada vez que el receptor recibe un nuevo mensaje. (Heredado de IReceiverClient) |
RegisterMessageHandler(Func<Message,CancellationToken,Task>, MessageHandlerOptions) |
Recibir mensajes continuamente de la entidad. Registra un controlador de mensajes y comienza un nuevo subproceso para recibir mensajes. El receptor espera este controlador(Func<T1,T2,TResult>) cada vez que el receptor recibe un nuevo mensaje. (Heredado de IReceiverClient) |
RegisterPlugin(ServiceBusPlugin) |
Registra un ServiceBusPlugin objeto que se va a usar con este cliente. (Heredado de IClientEntity) |
RegisterSessionHandler(Func<IMessageSession,Message,CancellationToken,Task>, Func<ExceptionReceivedEventArgs,Task>) |
Recibir mensajes de sesión continuamente de la suscripción. Registra un controlador de mensajes y comienza un nuevo subproceso para recibir mensajes de sesión. Este controlador(Func<T1,T2,T3,TResult>) se espera cada vez que el cliente de suscripción recibe un nuevo mensaje. |
RegisterSessionHandler(Func<IMessageSession,Message,CancellationToken,Task>, SessionHandlerOptions) |
Recibir mensajes de sesión continuamente de la suscripción. Registra un controlador de mensajes y comienza un nuevo subproceso para recibir mensajes de sesión. Este controlador(Func<T1,T2,T3,TResult>) se espera cada vez que el cliente de suscripción recibe un nuevo mensaje. |
RemoveRuleAsync(String) |
Quita la regla de la suscripción identificada por |
UnregisterMessageHandlerAsync(TimeSpan) |
Anule el registro del controlador de mensajes del receptor si hay un controlador de mensajes activo registrado. Esta operación espera a que finalicen las operaciones de recepción y control de mensajes en curso para finalizar y anular el registro de las futuras recepciones en el controlador de mensajes que se registró anteriormente. (Heredado de IReceiverClient) |
UnregisterPlugin(String) |
Anula el registro de un ServiceBusPluginobjeto . (Heredado de IClientEntity) |
UnregisterSessionHandlerAsync(TimeSpan) |
Anule el registro del controlador de sesión del receptor si hay un controlador de sesión activo registrado. Esta operación espera a que finalicen las operaciones de recepción y control de sesiones para finalizar y anular el registro de las futuras recepciones en el controlador de sesión que se registró anteriormente. |
Se aplica a
Azure SDK for .NET