Azure functions 服务总线触发Azure功能.net核心3.1

Azure functions 服务总线触发Azure功能.net核心3.1,azure-functions,Azure Functions,我已经编写了一个Azure函数(2.0)。 我正在尝试使用下面这样的队列消息(代理消息) FunctionName("ConsumeQueueMessage")] public static async Task InitiateQueueHandling([ServiceBusTrigger("queueName", Connection = "AzureServiceBus")]BrokeredMessage queue

我已经编写了一个Azure函数(2.0)。 我正在尝试使用下面这样的队列消息(代理消息)

 FunctionName("ConsumeQueueMessage")]
     public static async Task InitiateQueueHandling([ServiceBusTrigger("queueName", Connection = "AzureServiceBus")]BrokeredMessage queueMessage, ILogger log)
     {
         log.LogInformation($"HTTP trigger function starting processing campaign seek request at : {DateTime.Now}.");
但是当我在本地运行它时,我会得到这样一个错误

Microsoft.Azure.WebJobs.Host:异常绑定参数“queueMessage”。 Microsoft.Azure.WebJobs.Host:将参数绑定到复杂对象(如“BrokeredMessage”)使用Json.NET序列化

  • 将参数类型绑定为“string”而不是“BrokeredMessage”,以获取原始值并避免JSON反序列化,或者
  • 将队列负载更改为有效的json。JSON分析器失败:分析值@时遇到意外字符。路径“”,第0行,位置0
  • 队列消息的创建如下所示

        var message = new BrokeredMessage(objWrapper);
                 message.Properties["message"] = JsonConvert.SerializeObject(objWrapper.Message);
                 message.Properties["messageType"] = objWrapper.Type.ToString();
    
    您应该注意并使用消息而不是代理消息

    这些参数类型适用于Azure函数版本1.x;对于2.x和 在更高的级别上,使用Message而不是BrokeredMessage


    您使用的是哪个版本的WebJobs SDK?”因为它闻起来很像这样:这能回答你的问题吗?嘿,@Arjun Menon,你介意接受我的回答作为其他人的参考吗?嗨,谢谢你的快速回答。创建队列消息的对象正在.NET framework中运行,其中as Azure函数位于.NET core中。这会是一个问题吗?很抱歉我的回复很慢,我没有得到这个评论。我不认为你提到的是你的案子的问题。