从 .NET 6 .NET 8 迁移我的 Azure Function 应用程序项目后,我遇到了这个问题
未找到工作职能。尝试公开您的工作类别和方法。如果您使用绑定扩展(例如 Azure 存储、ServiceBus、计时器等),请确保您已在启动代码中调用扩展的注册方法(例如 builder.AddAzureStorage()、builder.AddServiceBus( )、builder.AddTimers() 等)。
我按照文档尝试了一切。但我仍然面临这个问题
未找到工作职能。尝试公开你的工作类别和方法
当函数定义不正确时,会出现此错误或消息。您可以使用下面的代码,它可以在 .Net 8 上正确运行。
对于 Http 触发器:
public IActionResult Run([HttpTrigger(AuthorizationLevel.Function, "get", "post")] HttpRequest req)
{
_logger.LogInformation("Hello Rithwik Bojja");
return new OkObjectResult("Hi!Hi");
}
对于服务巴士,您可以使用
public async Task Run
。
确保您已将该功能设置为公开。同样在 Program.cs 中正确配置如下:
using Microsoft.Azure.Functions.Worker;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
var rith = new HostBuilder()
.ConfigureFunctionsWebApplication()
.ConfigureServices(srs =>
{
srs.AddApplicationInsightsTelemetryWorkerService();
srs.ConfigureFunctionsApplicationInsights();
})
.Build();
rith.Run();
检测到的功能如下: