Приложение-функция Azure помещает ApplicationProperties из ServiceBusMessage в тело вместо собственного свойства ApplicaC#

Место общения программистов C#
Ответить
Anonymous
 Приложение-функция Azure помещает ApplicationProperties из ServiceBusMessage в тело вместо собственного свойства Applica

Сообщение Anonymous »

У меня есть приложение-функция Azure версии 4, использующее .NET 8. Если это поможет, это приложение с изолированной рабочей функцией.
Оно ссылается на следующие пакеты: Это код одной из функций, которые я там использую, все они практически одинаковы с разными значениями, установленными в ApplicationProperties:

Код: Выделить всё

[Function("SampleFunction")]
[ServiceBusOutput("myschedule", Connection = "ServiceBusConnString")]
public ServiceBusMessage SampleFunction([TimerTrigger("0 1 1 1/1 * *")] TimerInfo myTimer)
{
var result = new ServiceBusMessage();
result.ApplicationProperties.Add("CreatedDate", DateTime.UtcNow);
result.ApplicationProperties.Add("DataType", "SampleFunction");
result.ApplicationProperties.Add("UniqueId", Guid.NewGuid());
return result;
}
Однако, когда сообщение получено в служебной шине Azure, заданные мной данные находятся в теле сообщения, а не в ApplicationProperties сообщения.
Изображение

Свойства сообщения пусты:
Изображение

В Visual Studio вы увидите, что оба они являются разными свойствами объекта ServiceBusMessage:
Изображение

Итак, у меня есть несколько вопросов в надежде прояснить, не сошёл ли я с ума или есть вещи, которые я неправильно понял в дизайне новой библиотеки Azure.Messaging.ServiceBus:
  • Как правильно установить свойства приложения, также известные как свойства сообщения, без их перехода в тело? На стороне получателя, если я попытаюсь прочитать message.ApplicationProperties, я получу свойства сообщения вместо свойств в теле сообщения.
  • Это задумано или это ошибка Azure, заключающая такие свойства в двойной конверт? Или на самом деле это я неправильно использовал приложение-функцию Azure?
Я могу просто прочитать их из тела на стороне получателя, но делать это таким образом довольно затруднительно, и следующему разработчику, возможно, придется пройти тот же мыслительный процесс, чтобы в конечном итоге ни к чему не прийти.

Подробнее здесь: https://stackoverflow.com/questions/798 ... o-the-body
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»