首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >不能使用服务容器和默认值中的服务实例化SwaggerGenerator类型的构造函数。

不能使用服务容器和默认值中的服务实例化SwaggerGenerator类型的构造函数。
EN

Stack Overflow用户
提问于 2018-12-25 22:30:39
回答 2查看 10.3K关注 0票数 29

我想把Swagger添加到我的项目中。收到的错误如下。

不能使用来自服务容器和默认值的服务实例化'Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator‘类型的构造函数。

因为我没有在Swagger二进制文件中更改任何东西,所以只安装了软件包Swashbuckle.AspNetCore和Swashbuckle.AspNetCore.Swagger (都在4.0.1版中),我假设这是关于配置的。按照建议here,我设置了如下所示的配置。

代码语言:javascript
复制
services.AddSwaggerGen(_ =>
{
  _.SwaggerDoc("v1", new Info { Version = "v1", Title = "My API" });
});

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

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

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-03-06 09:23:25

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

具体而言,所要求的项目是:

代码语言:javascript
复制
services.AddMvcCore()
        .AddApiExplorer();
票数 51
EN

Stack Overflow用户

发布于 2019-02-10 15:01:15

您应该在services.AddMvc();中注册IServiceCollection,并在应用程序的Startup.cs中在IApplicationBuilder中配置app.UseMvc()

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53926023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档