37

有没有办法做到这一点?

我已经为我的其他 API 生成内容,但我不相信它适用于 SignalR。

4

3 回答 3

11

这是一个可以帮助你的 Nuget 包。

Nuget 链接:https ://www.nuget.org/packages/SignalRSwaggerGen/

Github 链接:https ://github.com/Dorin-Mocan/SignalRSwaggerGen/wiki

首先,您需要使用 SignalRSwaggerGen.Attributes 命名空间中的属性装饰您的 SignalR 集线器:

[SignalRHub]
public class SomeHub : Hub
{
}

然后将 SignalRSwaggerGen 添加到 Swagger 生成器:

services.AddSwaggerGen(options =>
{
    options.SwaggerDoc("v1", new OpenApiInfo { Title = "Some API v1", Version = "v1" });
    // here some other configurations maybe...
    options.AddSignalRSwaggerGen();
});

更多信息请参考 Github 文档。

于 2021-06-17T14:28:44.097 回答
3

正如评论所建议的那样,我成功地将SigSpec用于此目的。

我不得不修补一点,但它完成了工作。

于 2019-11-21T13:23:56.410 回答
-4

假设您使用的是 Asp.NET Core,则可以在启动时注入自定义文档。

在你的Startup.ConfigureServices你应该已经有一个 Swagger 部分:

services.AddSwaggerGen(c =>
{
    ...
})

只需将自定义 XML 文件添加到 Swagger 文档:

services.AddSwaggerGen(c =>
{
    c.IncludeXmlComments("custom_doc.xml");
})

custom_doc.xml标准 C# XML 文档文件在哪里。

于 2018-02-09T14:22:07.427 回答