我正在尝试将Swagger添加到我的项目中。收到的错误如下。
由于我自己尚未更改Swagger二进制文件中的任何内容,因此仅安装了软件包Swashbuckle.AspNetCore和Swashbuckle.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/