使用NSwag提供多种结果类型

时间:2019-06-25 10:32:28

标签: asp.net-web-api nswag

在Asp.net WebApi(不是核心)中,是否可以为同一状态码提供多种NSwag.Annotations.SwaggerResponse类型?实际上,我有两种响应类型,都是同一抽象类的后代。

我试图将基类指定为响应类型,这导致在生成的描述符中将该类作为响应模型。这很正常。

我试图用两个后代添加两个属性实例。生成的模型仍然是基类,而不是指定的实际类,但是描述已合并。

[SwaggerResponse(HttpStatusCode.OK, typeof(DeliveryData), Description = "Provided PIN code belongs to a delivery")]
[SwaggerResponse(HttpStatusCode.OK, typeof(AdhocData), Description = "Provided PIN code belongs to an adhoc visitor")]

结果是: enter image description here

有趣的是,在模型列表中,我同时看到了基类和两个后代。

有什么方法可以指示NSwag生成备用模型(oneOf)?

1 个答案:

答案 0 :(得分:0)

此页面介绍了如何在序列化程序和规范中设置继承:

https://github.com/RicoSuter/NJsonSchema/wiki/Inheritance