IServiceCollectionConfigurator'不包含'UsingRabbitMq'的定义

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

在我的配置中尝试使用“UsingRabbitMq”时出现此错误。

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

public void ConfigureServices(IServiceCollection services)
        {

serviceSettings = Configuration.GetSection(nameof(ServiceSettings)).Get<ServiceSettings>();

services.AddMassTransit(x =>
            {
                x.UsingRabbitMq((context, configurator) =>
                {
                    var RabbitMQSettings = Configuration.GetSection(nameof(RabbitMqSettings)).Get<RabbitMqSettings>();
                    configurator.Host(RabbitMQSettings.Host);
                    configurator.ConfigureEndpoints(context, new KebabCaseEndpointNameFormatter(serviceSettings.ServiceName, false));
                });
            });

.....

“.UsingRabbitMq”部分是启动类中唯一给我带来错误的部分。

我使用 .NET 5.0,我的 .csproj 看起来像这样

<ItemGroup>
    <PackageReference Include="MassTransit.AspNetCore" Version="5.3.2" />
    <PackageReference Include="MassTransit.RabbitMQ" Version="5.3.2" />
    <PackageReference Include="MassTransit.Extensions.DependencyInjection" Version="5.3.2" />
    <PackageReference Include="MongoDB.Driver" Version="2.23.1" />
    <PackageReference Include="Swashbuckle.AspNetCore" Version="5.6.3" />
    <PackageReference Include="Microsoft.AspNetCore.Authentication.OpenIdConnect" Version="5.0.1" />
    <PackageReference Include="Swashbuckle.AspNetCore.Annotations" Version="5.0.0" />
    <PackageReference Include="Swashbuckle.AspNetCore.Filters" Version="5.0.0" />
  </ItemGroup>

这些都是我进口的

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using MassTransit;
using MassTransit.Definition;
using MassTransit.RabbitMqTransport.Hosting;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.HttpsPolicy;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
using Microsoft.OpenApi.Models;
using MongoDB.Bson;
using MongoDB.Bson.Serialization;
using MongoDB.Bson.Serialization.Serializers;
using MongoDB.Driver;
using Shop.Catalog.Service.Entities;
using Shop.Catalog.Service.Repositories;
using Shop.Catalog.Service.Settings;
using Shop.Catalog.Service.Contracts;
using RabbitMQ;

有什么想法可能导致这种情况吗?

我尝试过不同版本的软件包,但总是出现相同的错误。我尝试了各种导入,但仍然不起作用。据我搜索,谷歌上没有与UsingRabbitMQ相关的答案。非常感谢帮助

c# service configuration rabbitmq dependencies
1个回答
0
投票

虽然我和你有同样的问题,但即使我使用.Net或.Net 8,我也将“MassTransit.RabbitMQ”更新为Version =“7.3.1”,“MassTransit.AspNetCore”也更新为Version =“7.3.1” 。 然后就可以了。

© www.soinside.com 2019 - 2024. All rights reserved.