如何正确使用 ServiceStack 中的 Api 属性来命名 SwaggerUI 中的服务?

How do I properly use the Api Attribute in ServiceStack to name a service in SwaggerUI?

使用 Swagger-UI 和 ServiceStack,我正在尝试使用 Api 属性来更简洁地命名我的服务。

我很难弄清楚属性需要在哪里才能将 description 属性 添加到 resources 端点中的 api大摇大摆。

我有一个基本请求,它被我的客户端点的其他一些请求继承。 Api 属性仅在放置在此特定请求 dto 上时才起作用。如果我将它移到另一个,它就会停止工作。这是我的 swagger 页面的示例:

这是代码:

下面是似乎不起作用的代码:

我想为每项服务取一个友好的名称。谢谢!

编辑:我确实在 ServiceStack 代码库中找到了一些代码,表明它正在寻找 FirstAttribute。我尝试通过改变事物的顺序来进行测试,但也没有得到想要的结果。如果有帮助,我正在查看 AttributeExtensions.cs

您可以使用 [Api("API Description")][Description("API Description")] 向单个服务添加描述,尽管这并不总是直接映射到 Swagger 路由描述,因为 Swagger UI 将多个路由分组在单个顶级路由下,该路由涵盖共享顶级路由的多个不同服务.

但您可以在 SwaggerFeature 上使用 RouteSummary 字典指定路线摘要,例如:

Plugins.Add(new SwaggerFeature {
    RouteSummary = {
        { "/top-level-path", "Route Summary" }
    }
});