Windows上.net core 3.0 webapi上的Swagger错误(无法解析类型为'ISwaggerProvider'的服务)

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

我有此默认的Web APi支架。我包括以下Nuget软件包。我在Startup.cs中有以下文件。但是它抛出错误。请协助

nuget packages installederror on screen

我的Startup.cs类具有以下内容:-

            app.UseSwagger();

            app.UseSwaggerUI(c =>
            {
                c.RoutePrefix = "v1";
                var basePath = string.IsNullOrWhiteSpace(c.RoutePrefix) ? "." : "..";
                c.SwaggerEndpoint($"{basePath}/swagger/{c.RoutePrefix}/swagger.json", "Name");
            });
c# asp.net-web-api .net-core swagger swashbuckle
1个回答
0
投票

之所以出现此问题,是因为您没有在services.AddSwaggerGen()方法中调用ConfigureServices(IServiceCollection services)

此方法在DI容器中注册ISwaggerProvider接口,因为未注册,因此在调用摇摇欲坠的路径时会收到此异常。

ConfigureServices的完整示例:

        services.AddSwaggerGen(c =>
        {
            c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });
        });
© www.soinside.com 2019 - 2024. All rights reserved.