我正在尝试生成多个swagger.json文档,并使用Customize the Action Selection Process确定对哪个swagger文档执行哪个操作。
对于不同的草签文档是否可能具有不同的DocInclusionPredicate?
例如,我有
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new Info { Title = "My API - V1", Version = "v1" });
c.SwaggerDoc("v2", new Info { Title = "My API - V2", Version = "v2" });
})
如何为DocInclusionPredicate
指定一个v1
,为DocInclusionPredicate
文档指定另一个v2
?
c.DocInclusionPredicate((docName, apiDesc) =>
{
if (docName == "v1")
{ /* actions for v1 */ }
else if (docName == "v2")
{ /* actions for v2 */ }
});
如果谓词属于特定版本,则返回true
,如果应在正确的if语句中过滤谓词,则返回false