尝试在 dotnet6 azure function v4 program.cs 中注册 Azure ServiceBus 客户端

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

我有一个用于 Azure Function v4 应用程序的新 dotnet 6 项目。

我有多个服务总线,每个服务总线都有多个队列和主题,我正在尝试使用 Microsoft.Extensions.Azure 将 ServiceBusClients 注入到应用程序中。我正在尝试遵循在 ASP.net Core 中注入多个 ServiceBusClient 和这个https://www.nuget.org/packages/Azure.Messaging.ServiceBus/。但是,我使用的是使用 program.cs 文件而不是 startup.cs 文件的新指南。

using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Azure;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;

var localRoot = Environment.GetEnvironmentVariable("AzureWebJobsScriptRoot");
var azureRoot = $"{Environment.GetEnvironmentVariable("Home")}/site/wwwroot";
var actualRoot = localRoot ?? azureRoot;

var config = new ConfigurationBuilder()
    .AddJsonFile("local.settings.json", optional: true, reloadOnChange: true)
    .AddEnvironmentVariables()
    .Build();

string connectionString = config.GetConnectionString("MyDBConnectionString")!;

var host = new HostBuilder()
    .ConfigureFunctionsWorkerDefaults()
    .ConfigureAppConfiguration(config =>
    {
        config
        .SetBasePath(Directory.GetCurrentDirectory())
        .AddJsonFile("local.settings.json", optional: true, reloadOnChange: true)
        .AddEnvironmentVariables();
    })
    .ConfigureServices(services =>
    {
        services.AddDbContextFactory<MyDbContext>(
            options => SqlServerDbContextOptionsExtensions.UseSqlServer(options, connectionString)
        );

        services.AddHttpClient();
        services.RegisterServicesLayer();

        string crmConnectionString = config.GetConnectionString("crm.pub")!;
        services.AddAzureClients(clientsBuilder =>
        {
            clientsBuilder.AddServiceBusClient(crmConnectionString).WithName("CrmPublish");
        });


    })
    .Build();

host.Run();

但是,我收到这个错误:

错误 CS1061“IServiceCollection”不包含“AddAzureClients”的定义,并且找不到接受类型“IServiceCollection”的第一个参数的可访问扩展方法“AddAzureClients”(您是否缺少 using 指令或程序集引用?)

所有库都已安装。

有什么建议吗?

c# .net azure azure-functions azureservicebus
© www.soinside.com 2019 - 2024. All rights reserved.