When publishing a message to Azure Service Bus, how can I set the session id?
Code:
[FunctionName(nameof(PersistFromServiceBusTopicToCosmos))]
[return: ServiceBus(queueOrTopicName: ReceiveTopic, entityType: ServiceBusEntityType.Topic, Connection = ServiceBusConnectionSection)]
public static async Task<string> PersistFromServiceBusTopicToCosmos(
[ServiceBusTrigger(queueName: IngressQueue,
Connection = ServiceBusConnectionSection)] string queueItem,
[CosmosDB(databaseName: DatabaseName,
containerName: RetailContainer,
Connection = CosmosConnectionSection)] IAsyncCollector<dynamic> documentsOut,
ILogger logger)
{
var retailTransaction = JsonConvert.DeserializeObject<RetailTransaction>(queueItem, JsonSerialisationUtils.SerialiserSettings);
retailTransaction.SetPlatformPersisted();
await documentsOut.AddAsync(retailTransaction); // write to cosmos
logger.LogInformation("Persisting transaction {transactionNumber}", retailTransaction.TransactionNumber);
var transactionJson = JsonConvert.SerializeObject(retailTransaction, JsonSerialisationUtils.SerialiserSettings);
return transactionJson;
}