Added useSwashBuckle condition (#15157)

Added useSwashBuckle condition to Swashbuckle attributes in models
This commit is contained in:
leonluc-dev 2023-04-10 12:21:32 +02:00 committed by GitHub
parent e9e0f50ab6
commit a17bb59097
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -11,7 +11,9 @@ using Newtonsoft.Json;
{{#model}} {{#model}}
{{#discriminator}} {{#discriminator}}
using JsonSubTypes; using JsonSubTypes;
{{#useSwashbuckle}}
using Swashbuckle.AspNetCore.Annotations; using Swashbuckle.AspNetCore.Annotations;
{{/useSwashbuckle}}
{{/discriminator}} {{/discriminator}}
{{/model}} {{/model}}
{{/models}} {{/models}}
@ -27,10 +29,14 @@ namespace {{modelPackage}}
[DataContract] [DataContract]
{{#discriminator}} {{#discriminator}}
[JsonConverter(typeof(JsonSubtypes), "{{{discriminatorName}}}")] [JsonConverter(typeof(JsonSubtypes), "{{{discriminatorName}}}")]
{{#useSwashbuckle}}
[SwaggerDiscriminator("{{{discriminatorName}}}")] [SwaggerDiscriminator("{{{discriminatorName}}}")]
{{/useSwashbuckle}}
{{#mappedModels}} {{#mappedModels}}
[JsonSubtypes.KnownSubType(typeof({{{modelName}}}), "{{^vendorExtensions.x-discriminator-value}}{{{mappingName}}}{{/vendorExtensions.x-discriminator-value}}{{#vendorExtensions.x-discriminator-value}}{{{.}}}{{/vendorExtensions.x-discriminator-value}}")] [JsonSubtypes.KnownSubType(typeof({{{modelName}}}), "{{^vendorExtensions.x-discriminator-value}}{{{mappingName}}}{{/vendorExtensions.x-discriminator-value}}{{#vendorExtensions.x-discriminator-value}}{{{.}}}{{/vendorExtensions.x-discriminator-value}}")]
{{#useSwashbuckle}}
[SwaggerSubType(typeof({{{modelName}}}), DiscriminatorValue = "{{^vendorExtensions.x-discriminator-value}}{{{mappingName}}}{{/vendorExtensions.x-discriminator-value}}{{#vendorExtensions.x-discriminator-value}}{{{.}}}{{/vendorExtensions.x-discriminator-value}}")] [SwaggerSubType(typeof({{{modelName}}}), DiscriminatorValue = "{{^vendorExtensions.x-discriminator-value}}{{{mappingName}}}{{/vendorExtensions.x-discriminator-value}}{{#vendorExtensions.x-discriminator-value}}{{{.}}}{{/vendorExtensions.x-discriminator-value}}")]
{{/useSwashbuckle}}
{{/mappedModels}} {{/mappedModels}}
{{/discriminator}} {{/discriminator}}
public {{#modelClassModifier}}{{.}} {{/modelClassModifier}}class {{classname}} {{#parent}}: {{{.}}}{{^pocoModels}}, {{/pocoModels}}{{/parent}}{{^pocoModels}}{{^parent}}: {{/parent}}IEquatable<{{classname}}>{{/pocoModels}} public {{#modelClassModifier}}{{.}} {{/modelClassModifier}}class {{classname}} {{#parent}}: {{{.}}}{{^pocoModels}}, {{/pocoModels}}{{/parent}}{{^pocoModels}}{{^parent}}: {{/parent}}IEquatable<{{classname}}>{{/pocoModels}}