当前位置: 首页 > 知识库问答 >
问题:

无法绑定到Azure ServiceBus函数中的MessageReciever

阎成天
2023-03-14

Message Message,string lockToken,MessageReceiver,MessageReceiver,ILogger日志)

使用MessageReceiver或底层接口时,我会得到以下错误:

Microsoft.Azure.WebJobs.Host:无法将参数“Message Receiver”绑定到类型“Microsoft.ServiceBus.Messaging.MessageReceiver”。

我正在使用[ServiceBusTrigger]

共有1个答案

郑俊材
2023-03-14

对我来说似乎没有问题。

请检查:

函数1.cs

using System;
using Microsoft.Azure.ServiceBus.Core;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Host;
using Microsoft.Extensions.Logging;

namespace FunctionApp16
{
    public static class Function1
    {
        [FunctionName("Function1")]
        public static void Run([ServiceBusTrigger("myqueue", Connection = "str")]string myQueueItem, ILogger log, MessageReceiver messageReceiver, string lockToken)
        {
            messageReceiver.RenewLockAsync(lockToken);
            log.LogInformation($"C# ServiceBus queue trigger function processed message: {myQueueItem}");
        }
    }
}
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <AzureFunctionsVersion>v3</AzureFunctionsVersion>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.Azure.WebJobs.ServiceBus" Version="3.0.0-beta8" />
    <PackageReference Include="Microsoft.NET.Sdk.Functions" Version="3.0.7" />
  </ItemGroup>
  <ItemGroup>
    <None Update="host.json">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </None>
    <None Update="local.settings.json">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
      <CopyToPublishDirectory>Never</CopyToPublishDirectory>
    </None>
  </ItemGroup>
</Project>
from azure.servicebus import ServiceBusClient
from azure.servicebus import QueueClient, Message

str = "Endpoint=sb://testbowman.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=xxxxxx"
queue_client = QueueClient.from_connection_string(str, "myqueue")
msg = Message('Test Message')
queue_client.send(msg)
print('Already send.')

无错误返回

 类似资料:
  • 我制作了一个Azure函数(http触发器),并使用Visual Studio 2019将其部署在门户中。 该函数工作正常,我现在将添加一个绑定到我的CosmosDB。我导航到我的函数,然后单击“集成”。现在我看到了触发器、函数以及输入和输出绑定。 我应该可以在这里添加一个新的输入绑定。但我没有“添加”按钮。我做错了什么?

  • 我要移民到。标准到。核心,但我面临一个问题: Microsoft.Azure.WebJobs.Host:索引方法FunctionName错误。Microsoft.Azure.WebJobs.Host:无法将参数MyService绑定到IMyService类型。请确保绑定支持参数Type。如果使用绑定扩展(例如Azure存储、ServiceBus、计时器等),请确保已在启动代码(例如builder.

  • 我在《快速入门指南》中创建了基本的Azure功能。根据教程,这个默认函数应该可以立即工作,但我遇到了一个错误。 功能体: 错误消息: 函数($HttpTriggerCSharp1)错误:Microsoft。蔚蓝色的网络作业。主机:错误索引方法的函数。HttpTriggerCSharp1’。微软蔚蓝色的网络作业。主机:无法将参数“u return”绑定到类型HttpResponseMessage

  • 当我试着运行appium时,突然遇到了这个错误。 错误:处理命令时发生未知的服务器端错误。原始错误:执行adbExec时出错。原始错误:“Command”C:\Users\vsingh\AppData\Local\Android\Sdk\platform tools\adb。exe-P 5037-s emulator-5554转发tcp:8200 tcp:6790'已退出,代码为1';斯特德:亚行

  • 我遇到了一个很奇怪的问题。我尝试将属性绑定到DataContext,但它不起作用。这是我正在做的事情(在橱窗里)。资源部分): 在代码的其他地方,我像这样设置数据上下文: 我没有收到任何错误,但绑定没有发生。所以我添加了一个调试转换器,看看我是否可以弄清楚发生了什么: 我在转换器中设置了一个断点,传递的值为 null。确定事情不正常,我在设置 DataContext 的行上设置了一个断点。它首先被