【发布时间】:2021-10-09 20:49:33
【问题描述】:
我们正在 .net 5 上为服务总线主题触发器功能开发我们的功能应用程序。
测试我是否从 Azure 门户向服务总线主题发送消息。
我没有将 Application/Json 内容类型数据(复杂对象)传递给函数应用触发器,也无法处理字符串(Text/Plain)等简单对象。
任何人都可以帮助解决这个问题。
[Function("ServiceBusFunction")]
[ServiceBusOutput("outputQueue", Connection = "ServiceBusConnection")]
public static string Run(
[ServiceBusTrigger("queue", Connection = "ServiceBusConnection")] string item,
FunctionContext context)
{
var logger = context.GetLogger("ServiceBusFunction");
logger.LogInformation(item);
var message = $"Output message created at {DateTime.Now}";
return message;
}
【问题讨论】:
-
隔离工作者 SDK?您只能接收原始类型。此外,在询问与代码相关的问题时,请发布一些您正在使用的代码。
-
嗨@sean。我现在无法在此处发布我的代码。但我的代码与我更新的代码非常相似。我在那里使用主题触发器而不是队列,并且在参数中我有来自 Azure.Messaging.ServiceBus 的自定义对象消息
-
您可以将接收到的传入消息反序列化为字符串
item。传出的字符串应该是一个序列化的对象,一个有效的 JSON 字符串。您发送的不是 JSON。看看我的帖子:weblogs.asp.net/sfeldman/… -
仍然存在混乱。我正在从客户端应用程序发送消息,类似于此链接中提到的内容。docs.microsoft.com/en-us/azure/service-bus-messaging/…
-
我正在从客户端应用程序向服务总线发送消息,并希望通过函数应用程序服务总线主题触发器接收该消息。但是在您的代码中,我看到您正在函数应用程序本身中准备消息。理解有误请指正
标签: azure-functions .net-5 azure-servicebus-topics