Azure Functions .NET 5.0 触发器问题

Azure Functions .NET 5.0 Issue with Triggers

基于这两个站点,我为 .NET 5.0 创建了一个 Azure 函数:

(Preview) Creating Azure Functions using .NET 5

Use Azure Functions with .NET 5

一切都可以编译,但是当我发布它时检测到以下内容:

Getting site publishing info...
Creating archive for current directory...
Uploading 16.64 MB
Upload completed successfully.
Deployment completed successfully.
Syncing triggers...
Functions in AppDev:
     OrderSubmitterFunction - [No Trigger Found]
     OtherSubmitterFunction - [No Trigger Found]

在我的一个函数中 classes:

[Function(nameof(OrderSubmitterFunction))]
public async Task Run([QueueTrigger("orders", Connection = "AzureWebJobsStorage")]string myQueueItem, ILogger log)

还有一个:

[Function(nameof(OtherSubmitterFunction))]
public async Task Run([BlobTrigger(containerName + "/{name}", Connection = "AzureWebJobsStorage")]Stream myBlob, string name, ILogger log)

我怀疑以上是问题所在,因为这些触发器属性似乎没有被拾取。但是,这些功能确实会引起注意。

作为参考,我的启动 class 是:

static Task Main(string[] args)
{
    var config = new ConfigurationBuilder()
        .SetBasePath(Directory.GetCurrentDirectory())
        .AddJsonFile("local.settings.json", optional: true, reloadOnChange: true)
        .AddEnvironmentVariables()
        .Build();

    var host = new HostBuilder()
        .ConfigureAppConfiguration(configurationBuilder =>
        {
            configurationBuilder.AddCommandLine(args);
        })
        .ConfigureFunctionsWorkerDefaults()
        .ConfigureServices(services =>
        {
            services.AddLogging();
            services.AddDbContext<Context>(opts =>
            {
                var conn = config.GetConnectionString("Context");
                opts.UseSqlServer(conn);
            });
        })
        .Build();

    return host.RunAsync();
}

有没有人注意到以上内容?

这是一个已知问题,您可以在 github 中找到它。我在发布期间遇到了同样的问题:

由于该功能可以正常运行,没有任何影响,此时可以忽略。

顺便说一下,我们应该按照 the official doc 1 or official doc 2 创建 .NET 5.0 的 Azure Function。