gpt4 book ai didi

c# - 在 API 文档中添加第三层

转载 作者:太空宇宙 更新时间:2023-11-03 14:55:58 24 4
gpt4 key购买 nike

在 C# 中构建 API 层,并在文档中使用 Swagger 和 Swashbuckle。到目前为止,我很喜欢它!只有一个问题。

默认情况下,API 的分层深度为两层。示例...这些是当前可用的 API,具有 Access Integration: Integration Settings 扩展:

enter image description here

我想弄清楚的是如何对 Access Integration 进行单个分组,单击该分组时会显示这些 Controller :

  • 整合
  • 同步用户
  • 同步门
  • 访问事件

然后您可以深入到任何一个 Controller 以查看其中的方法。所以,基本上是三层而不是两层。

这可能吗?我一直在看这个问题:Grouping of API methods in documentation - is there some custom attribute ,但这并没有让我到达那里。我一直在努力弄清楚如何使用它:

c.GroupActionsBy(apiDesc => apiDesc.HttpMethod.ToString());

但我没有找到任何有关如何使用它的示例。

我试过这个:

[SwaggerOperation(Tags = new[] { "Access Integration", "Sync Doors" })]

[SwaggerOperation(Tags = new[] { "Access Integration", "Sync Users" })]

但这只是将每个 Controller 列出两次,一次在“访问集成”下,另一次在“同步用户”下。

最佳答案

就像@Helen 在评论中指出的那样:

Swagger UI does not support nested groups (tags). If you need this, you'll need to modify the source code to implement your custom grouping logic.

从理论上讲,定制是可能的(Swagger UI 是开源的),但您将开始从主要分支中分离出来,还有与 swashbuckle 的集成。它会变得非常困惑!



但是,如果您升级到最新的 UI (3.x),您将获得过滤器,以下是一些示例:

...还有更多隐藏的 gem 可以帮助您:
https://github.com/swagger-api/swagger-ui/blob/master/docs/usage/configuration.md#display

关于c# - 在 API 文档中添加第三层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49136449/

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