gpt4 book ai didi

c# - 无法使用服务容器中的服务和默认值实例化 SwaggerGenerator 类型的构造函数

转载 作者:IT王子 更新时间:2023-10-29 04:48:40 26 4
gpt4 key购买 nike

我正在尝试将 Swagger 添加到我的项目中。收到错误如下。

No constructor for type 'Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator' can be instantiated using services from the service container and default values.

因为我没有对 Swagger 二进制文件本身进行任何更改,所以只安装了包 Swashbuckle.AspNetCoreSwashbuckle.AspNetCore.Swagger(均在版本 4.0.1 中)我假设它与配置有关。按照建议here ,我已经设置了如下所示的配置。

services.AddSwaggerGen(_ =>
{
_.SwaggerDoc("v1", new Info { Version = "v1", Title = "My API" });
});

app.UseSwagger();
app.UseSwaggerUI(_ => { _.SwaggerEndpoint("/swagger/v1/swagger.json", "API docs"); });

我不确定我是否遗漏了一个包,我拥有的其中一个版本是否错误,或者我提供的设置配置是否足够。

最佳答案

正如提问者在评论中指出的那样,为我解决这个问题的方法是在 ConfigureServices 中添加对 Api Explorer 的引用。

具体需要的行是:

services.AddMvcCore()
.AddApiExplorer();

关于c# - 无法使用服务容器中的服务和默认值实例化 SwaggerGenerator 类型的构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53926023/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com