我目前正在使用Swashbuckle来记录我的.Net API,这是一个很棒的工具。我想知道是否可以添加存储在项目中的其他swagger文件。
我从swashbuckle文档中看到了以下代码并尝试了这个但它似乎不起作用:
.EnableSwagger("docs/{apiVersion}/swagger", c => c.SingleApiVersion("v1", "A title for your API"))
.EnableSwaggerUi("sandbox/{*assetPath}");
总体目标是必须选择在生成的项目XML文件中使用swagger,并能够将其他swagger文件添加到要显示的配置中。
提前致谢!
答案 0 :(得分:2)
默认情况下,SwashBuckle会将当前Web API项目中动态生成的文件公开。
为了能够添加其他文件,最简单的方法是:
覆盖Swashbuckle行为以加载your own index.html page,
让original index page进行修改;注意line 49验证数组中的URL。
在这里你可以更新它以获得你生成的文件的默认网址(例如swagger/docs/v1
)并添加你的Swagger文件,你最终得到一个js数组simlar:
discoveryPaths: arrayFrom('swagger/docs/v1|mySwaggerFiles/swaggerService.json'),