Можно ли вывести сообщение / BrokeredMessage с помощью функций Azure V2? - PullRequest
0 голосов
/ 04 января 2019

Из документов не ясно, как вывести структурированное сообщение. В старой функции я использовал BrokeredMessage, и в документах говорится, что для функций V2 Message, однако нет никаких указаний по , как использовать это. Это правильно:

[FunctionName(nameof(Job))]
public static async Task<IActionResult> Job(
    // ...
    IAsyncCollector<Microsoft.Azure.ServiceBus.Message> serializedJobCollector
)

Цель состоит в том, чтобы иметь возможность установить некоторые свойства метаданных, такие как идентификатор, который я делал ранее (с V1 и BrokeredMessage) для обнаружения дубликатов, но я не уверен, правильно ли это или мне нужно сериализовать в строку или что ...

1 Ответ

0 голосов
/ 04 января 2019

Вы нашли правильный путь, поскольку doc говорит

для 2.x, используйте Message вместо BrokeredMessage

, чтобы принятьпример

    [FunctionName("FunctionTest")]
    public static async Task<IActionResult> Run(
        [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
        [ServiceBus(queueOrTopicName:"queueName",Connection ="ServiceBusConnection")]IAsyncCollector<Message> outputMessages,
        ILogger log)
    {
            string requestBody = await new StreamReader(req.Body).ReadToEndAsync();
            var message = new Message
            {
                Body = System.Text.Encoding.UTF8.GetBytes(requestBody),
                MessageId = "MyMessageId"
            };
            await outputMessages.AddAsync(message);
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...