我正在开发一个ASP.NET Core WebAPI项目,并且我试图找到一种在构建时生成swagger json的方法吗?
由于我正在使用4个环境,我希望有4个swagger.json,其名称与我的选择不同,如:
是否也可以编辑json中的字段?我想编辑(取决于环境)以下字段:host,schemes和basePath。
我使用的是Swashbuckle.AspNetCore,但它似乎没有选项来执行此类任务,或者我错了吗?
提前致谢
答案 0 :(得分:1)
您可以选择从命令行生成OpenApi json文件,而无需使用Swashbuckle.AspNetCore.Cli
nuget包进行部署。
该命令将类似于以下内容,并且可以作为“构建后”脚本添加
dotnet <nugetpackages>\Swashbuckle.AspNetCore.Cli\bin\$(Configuration)\netcoreapp<ver>\dotnet-swagger.dll tofile --host http://localhost --output swagger.json <bin>\<AssemblyName>.dll v1
更多详细信息,请点击https://github.com/domaindrivendev/Swashbuckle.AspNetCore#swashbuckleaspnetcorecli
我不确定要为每个环境立即生成单独的文件
答案 1 :(得分:0)
简单的方法是使用 PowerShell 任务更新json文件并使用其他名称保存。
简单的工作流程:
有关详细代码,您可以参考此主题:how do I update json file using powershell。
内部版本号值存储在预定义变量中:Build.BuildNumber
(PowerShell:$env:BUILD_BUILDNUMBER
)