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

无法在 .net Framework 的 Azure 函数应用中绑定参数'lockToken'?

喻增
2023-03-14

我在吸毒。net core Azure函数,没有问题,代码如下。

但是,当我使用.net框架创建Azure函数应用时,它会抛出以下错误。

我尝试了所有可能的谷歌解决方案。这个错误显然是由于nuget和library导致的,因为相同的代码可以很好地用于v2.net核心函数应用程序。

[FunctionName("Function1")]
        public static async System.Threading.Tasks.Task RunAsync([ServiceBusTrigger("topic", "sub", Connection = "ConnectionStringSettingName")]Message mySbMsg, string lockToken, MessageReceiver messageReceiver, ILogger log)
        {
            log.LogInformation($"C# ServiceBus topic trigger function processed message: {mySbMsg}");

            
        }

我甚至也试过这个:

 [FunctionName("Function1")]
            public static async System.Threading.Tasks.Task RunAsync([ServiceBusTrigger("topic", "sub", Connection = "ConnectionStringSettingName")]Message mySbMsg, Guid lockToken, MessageReceiver messageReceiver, ILogger log)
            {
                log.LogInformation($"C# ServiceBus topic trigger function processed message: {mySbMsg}");
    
                
            }

如果我把它作为guid或字符串,反之亦然,它会给出错误:

错误索引方法“函数1”。“RunAsync”。微软。Azure.WebJobs.Host:无法将参数“lockToken”绑定到类型Guid。请确保绑定支持该参数类型。如果您正在使用绑定扩展(例如ServiceBus、定时器等。)确保您已经在启动代码中调用了扩展的注册方法(例如config。UseServiceBus()、config。使用定时器()等。).

反之亦然错误:

RunAsync:Microsoft.Azure.WebJobs.Host:错误索引方法'Function1.RunAsync'。Microsoft.Azure.WebJobs.Host:无法将参数'lockToken'绑定到类型Guid。确保绑定支持参数Type。如果您使用绑定扩展(例如ServiceBus、Timers等),请确保您已在启动代码中调用扩展的注册方法(例如config.UseServiceBus()、config.UseTimers()等)。

共有1个答案

左康安
2023-03-14

您正在发送的locktoken参数是一个字符串。

错误消息是它无法将锁定令牌绑定到 Guid。

因此,它可能期望一个字符串是有效的 Guid,而您正在发送其他内容。

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

  • Message Message,string lockToken,MessageReceiver,MessageReceiver,ILogger日志) 使用MessageReceiver或底层接口时,我会得到以下错误: Microsoft.Azure.WebJobs.Host:无法将参数“Message Receiver”绑定到类型“Microsoft.ServiceBus.Messaging.M

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

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