1
resposta

[Bug] ‘IServiceCollection’ não contém uma definição para "AddSwaggerGen"

Quando tento ocmpilar o projeto FilmesAPI ainda sem alterações aparece essa mensagem de erro:

CS1061 ‘IServiceCollection’ não contém uma definição para "AddSwaggerGen" e não foi possível encontrar nenhum método de extensão "AddSwaggerGen" que aceite um primeiro argumento do tipo ‘IServiceCollection’ (você está se esquecendo de usar uma diretiva ou uma referência de assembly?) FilmesAPI C:\Users\sandr\source\repos\FilmesAPI\FilmesAPI\Program.cs 8 Ativo

1 resposta

Olá, Sandro!

Pelo que você descreveu, parece que você está tentando usar o método "AddSwaggerGen" que é parte do pacote Swashbuckle.AspNetCore.Swagger, mas o compilador não está encontrando essa definição.

Isso geralmente ocorre quando o pacote necessário não está instalado ou não está sendo referenciado corretamente.

Para resolver o problema, você pode tentar as seguintes etapas:

  1. Verifique se o pacote Swashbuckle.AspNetCore.Swagger está instalado. Você pode fazer isso abrindo o Gerenciador de Pacotes NuGet (clique com o botão direito do mouse no projeto -> Gerenciar Pacotes NuGet) e procurando por Swashbuckle.AspNetCore.Swagger na lista de pacotes instalados. Se não estiver lá, você precisará instalá-lo.

  2. Se o pacote estiver instalado, verifique se ele está sendo referenciado corretamente. No topo do seu arquivo Program.cs, você deve ter uma linha que diz "using Swashbuckle.AspNetCore.Swagger;". Se essa linha não estiver lá, adicione-a.

Aqui está um exemplo de como o código pode parecer:

using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Swashbuckle.AspNetCore.Swagger;

public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddSwaggerGen();
    }
}

Espero ter ajudado e bons estudos!