Microsoft Azure WebJobs SDK ServiceBus连接字符串'ServiceBusSettings.ConnectionString'丢失或为空

问题描述 投票:0回答:1

主要方法如下所示,

class Program
{
    static void Main(string[] args)
    {
        var builder = new HostBuilder();
        builder.ConfigureWebJobs(b =>
        {
            b.AddAzureStorageCoreServices();
            b.AddServiceBus(sbOptions =>
            {
                sbOptions.MessageHandlerOptions.AutoComplete = true;
                sbOptions.MessageHandlerOptions.MaxConcurrentCalls = 16;
            });
        });
        builder.ConfigureLogging((context, b) =>
        {
            b.AddConsole();
        });

        var host = builder.Build();

        using (host)
        {
            host.Run();
        }
    }
}

并且local.settings.json文件就像,

{
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "UseDevelopmentStorage=true",
    "FUNCTIONS_WORKER_RUNTIME": "dotnet",
    "ServiceBusSettings.ConnectionString": "Endpoint=***",
    "SQLConnectionString": "Server=.;Database=***;Trusted_Connection=True"
  }
}

并且正在消耗ServiceBusTrigger,如下所示,

public static class RegisterSK
{
    [FunctionName("RegisterSK")]
    public static void ProcessQueueMessage([ServiceBusTrigger("topicname", "S2", Connection = "ServiceBusSettings.ConnectionString")]string topicItem, ILogger log)
    {
        //logger.LogInformation(message);
    }
}

[在运行程序时出现错误,

Microsoft Azure WebJobs SDK ServiceBus连接字符串'ServiceBusSettings.ConnectionString'丢失或为空。

是Azure WebJob的新手。没有做错什么。参考了先前的解决方案,但没有任何适当的答案。

azure azureservicebus azure-webjobs azure-servicebus-queues azure-servicebus-topics
1个回答
0
投票

您需要使用AppSettings.json并将连接字符串保留为

"AzureWebJobs": { "extensions": { "ServiceBus": { "ConnectionStrings": { "Primary": "[your connection string here]" } } } }
© www.soinside.com 2019 - 2024. All rights reserved.