添加
services.AddVersionedApiExplorer();
之前正常工作的Swashbuckle开始显示空白的Swagger json,默认版本,没有端点。
ApiExplorer似乎需要在API控制器上存在apicontrollererattribute。所以,如果你没有用这个属性装饰你的控制器,一切都将完美地工作,直到你添加ApiExplorer,之后Swachbuckle将表现得像你的项目中根本没有控制器一样(显然,这就是ApiExplorer告诉它的)。
用[ApiController]
装饰控制器可以修复此问题。如果你不想麻烦地编写RegExp来为你应用这些更改,或者甚至进入每个单独的控制器文件手动粘贴,[assembly:ApiController]
将一次处理所有这些更改。