Sé que es posible recibir mensajes de una cola de bus de servicio como:
public static void ProcessQueueMessage([ServiceBusTrigger("inputqueue")] string message, TextWriter logger)Pero, ¿también hay una forma de recibir una sesión a través de un atributo de activación? ¿Algo así como ServiceBusSessionTrigger?
Normalmente uno aceptaría una sesión como esta:
var session = queueClient.AcceptMessageSession();Pero prefiero que WebJob SDK maneje cómo se pueden procesar varias sesiones a la vez.
Editar: parece que esto actualmente no es compatible: vea github para la solicitud de funciones
Edición 2: parece que están trabajando en esto
este nuget Microsoft.Azure.WebJobs.Extensions.ServiceBus en la sesión de soporte de la versión 3.1.0-beta3 en la función azul. cuando instale este nuget, podrá usarlo como el siguiente código [ServiceBusTrigger("testsessionqueue", Connection = "serviceBusConnectionString", IsSessionsEnabled = true)]
allí puedes encontrar nuget: Nuget y es un problema de github: github
Tenga en cuenta que todavía es una versión beta.
Actualmente no puede recibir una sesión a través de un atributo de activación, pero hay una solicitud de función de GitHub . Si esto es algo que muchas personas encontrarían útil, tendría sentido integrarlo en el ensamblaje central de ServiceBus.