Azure служебная шина - как добавить метаданные в сообщение - PullRequest
1 голос
/ 06 мая 2020

Я использую. net базовое веб-приложение в качестве издателя и. net основное консольное приложение в качестве подписчика. Я могу успешно передавать сообщения между этими двумя системами с помощью управляемых удостоверений, настроенных на портале Azure.

Мой вопрос: мне нужно добавить метаданные в отправляемое сообщение. Как мне это сделать?

Ниже мой код издателя:

string data = JsonConvert.SerializeObject(payloadEvents);
Message message = new Message(Encoding.UTF8.GetBytes(data));

var tokenProvider = TokenProvider.CreateManagedIdentityTokenProvider();

TopicClient sendClient = new TopicClient(_serviceBusNamespace, _topicName, tokenProvider, retryPolicy: null);

await sendClient.SendAsync(message);

1 Ответ

2 голосов
/ 06 мая 2020

Message объект имеет свойство под названием UserProperties, которое можно использовать для установки пользовательских метаданных для этого сообщения.

Что-то вроде:

string data = JsonConvert.SerializeObject(payloadEvents);
Message message = new Message(Encoding.UTF8.GetBytes(data));
message.UserProperties.Add("key1", "value1");
message.UserProperties.Add("key2", "value2");

var tokenProvider = TokenProvider.CreateManagedIdentityTokenProvider();

TopicClient sendClient = new TopicClient(_serviceBusNamespace, _topicName, tokenProvider, retryPolicy: null);

await sendClient.SendAsync(message);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...