如何从 Swashbuckle.AspNet 生成多个页面?

Pat*_*lph 7 asp.net swagger swashbuckle

我一直在遵循本指南,使用 Swashbuckle 为我的 ASP.Net REST WebApi 创建开发人员友好的文档。然而,当前版本Swashbuckle.AspNetCore v2.2.0生成了一个巨大的单页应用程序,这让我的用户感到困惑。如果我没记错的话,Swashbuckle 为每个控制器/方法生成单独的页面(2017 年初?)。我的配置如下:

app.UseSwaggerUI(c =>
{
    c.SwaggerEndpoint("/swagger/v1/swagger.json", "API V1");
    c.EnableFilter();
    c.MaxDisplayedTags(5);
});
Run Code Online (Sandbox Code Playgroud)

问:有没有办法让 Swagger-UI 为每个控制器和方法生成单独的页面,而不是一个巨大的单一滚动混乱?

更多细节:

  • VS2017
  • 微软.AspNetCore 2.0.0
  • 微软.AspNetCore.Mvc 2.0.0
  • Swashbuckle.AspNetCore 2.2.0
  • 纯 WebApi - 仅生成 JSON,根本不生成 HTML。
  • 通过 Kestrel 自托管
    • 使用 net 4.6.2 的 Windows(此处使用 Swashbuckle)
    • 或使用 dotnet core 2.0 的嵌入式 Linux(禁用 Swashbuckle)

小智 8

Swashbuckle.AspNetCore v2.2.0 支持将 API 操作任意分组到多个 Swagger 文档中。

请参阅此处的文档: https ://github.com/domaindrivendev/Swashbuckle.AspNetCore#generate-multiple-swagger-documents

  • 不幸的是,这些文件没有链接。通常,此功能用于版本控制或区分独立服务。我正在寻找页面/子/子模式而不是 SPA。 (2认同)