diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/3.0/model.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/3.0/model.mustache index 68bb4d8f562..ed044a74b94 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/3.0/model.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/3.0/model.mustache @@ -34,7 +34,9 @@ namespace {{modelPackage}} [DataContract] {{#discriminator}} {{#useNewtonsoft}} + {{#mappedModels.size}} [JsonConverter(typeof(JsonSubtypes), "{{{discriminatorName}}}")] + {{/mappedModels.size}} {{/useNewtonsoft}} {{#useSwashbuckle}} [SwaggerDiscriminator("{{{discriminatorName}}}")] diff --git a/modules/openapi-generator/src/main/resources/csharp-functions/modelGeneric.mustache b/modules/openapi-generator/src/main/resources/csharp-functions/modelGeneric.mustache index f056b02d603..954fb2ab10e 100644 --- a/modules/openapi-generator/src/main/resources/csharp-functions/modelGeneric.mustache +++ b/modules/openapi-generator/src/main/resources/csharp-functions/modelGeneric.mustache @@ -3,7 +3,9 @@ /// [DataContract(Name = "{{{name}}}")] {{#discriminator}} + {{#mappedModels.size}} [JsonConverter(typeof(JsonSubtypes), "{{{discriminatorName}}}")] + {{/mappedModels.size}} {{#mappedModels}} [JsonSubtypes.KnownSubType(typeof({{{modelName}}}), "{{^vendorExtensions.x-discriminator-value}}{{{mappingName}}}{{/vendorExtensions.x-discriminator-value}}{{#vendorExtensions.x-discriminator-value}}{{{.}}}{{/vendorExtensions.x-discriminator-value}}")] {{/mappedModels}} diff --git a/modules/openapi-generator/src/main/resources/csharp/modelGeneric.mustache b/modules/openapi-generator/src/main/resources/csharp/modelGeneric.mustache index 6dd06617f3f..eed64127376 100644 --- a/modules/openapi-generator/src/main/resources/csharp/modelGeneric.mustache +++ b/modules/openapi-generator/src/main/resources/csharp/modelGeneric.mustache @@ -10,7 +10,9 @@ [DataContract(Name = "{{{name}}}")] {{^useUnityWebRequest}} {{#discriminator}} + {{#mappedModels.size}} [JsonConverter(typeof(JsonSubtypes), "{{{discriminatorName}}}")] + {{/mappedModels.size}} {{#mappedModels}} [JsonSubtypes.KnownSubType(typeof({{{modelName}}}), "{{^vendorExtensions.x-discriminator-value}}{{{mappingName}}}{{/vendorExtensions.x-discriminator-value}}{{#vendorExtensions.x-discriminator-value}}{{{.}}}{{/vendorExtensions.x-discriminator-value}}")] {{/mappedModels}} diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/Cat.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/Cat.cs index cec47afe1f2..d0656ca88eb 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/Cat.cs +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/Cat.cs @@ -32,7 +32,6 @@ namespace Org.OpenAPITools.Model /// Cat /// [DataContract(Name = "Cat")] - [JsonConverter(typeof(JsonSubtypes), "ClassName")] public partial class Cat : Animal, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs index 96a00c78f2f..012d836c7ce 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs @@ -32,7 +32,6 @@ namespace Org.OpenAPITools.Model /// ChildCat /// [DataContract(Name = "ChildCat")] - [JsonConverter(typeof(JsonSubtypes), "PetType")] public partial class ChildCat : ParentPet, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/Dog.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/Dog.cs index ffd89a5334e..7742651a2bd 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/Dog.cs +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/Dog.cs @@ -32,7 +32,6 @@ namespace Org.OpenAPITools.Model /// Dog /// [DataContract(Name = "Dog")] - [JsonConverter(typeof(JsonSubtypes), "ClassName")] public partial class Dog : Animal, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/net4.7/Petstore/src/Org.OpenAPITools/Model/Cat.cs b/samples/client/petstore/csharp/restsharp/net4.7/Petstore/src/Org.OpenAPITools/Model/Cat.cs index a427b55727d..a52dd988da5 100644 --- a/samples/client/petstore/csharp/restsharp/net4.7/Petstore/src/Org.OpenAPITools/Model/Cat.cs +++ b/samples/client/petstore/csharp/restsharp/net4.7/Petstore/src/Org.OpenAPITools/Model/Cat.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// Cat /// [DataContract(Name = "Cat")] - [JsonConverter(typeof(JsonSubtypes), "ClassName")] public partial class Cat : Animal, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/net4.7/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs b/samples/client/petstore/csharp/restsharp/net4.7/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs index a5d404bd17d..f546083c72f 100644 --- a/samples/client/petstore/csharp/restsharp/net4.7/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs +++ b/samples/client/petstore/csharp/restsharp/net4.7/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// ChildCat /// [DataContract(Name = "ChildCat")] - [JsonConverter(typeof(JsonSubtypes), "PetType")] public partial class ChildCat : ParentPet, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/net4.7/Petstore/src/Org.OpenAPITools/Model/Dog.cs b/samples/client/petstore/csharp/restsharp/net4.7/Petstore/src/Org.OpenAPITools/Model/Dog.cs index 44f95fa0fe0..7437cf68475 100644 --- a/samples/client/petstore/csharp/restsharp/net4.7/Petstore/src/Org.OpenAPITools/Model/Dog.cs +++ b/samples/client/petstore/csharp/restsharp/net4.7/Petstore/src/Org.OpenAPITools/Model/Dog.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// Dog /// [DataContract(Name = "Dog")] - [JsonConverter(typeof(JsonSubtypes), "ClassName")] public partial class Dog : Animal, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/net4.8/Petstore/src/Org.OpenAPITools/Model/Cat.cs b/samples/client/petstore/csharp/restsharp/net4.8/Petstore/src/Org.OpenAPITools/Model/Cat.cs index a427b55727d..a52dd988da5 100644 --- a/samples/client/petstore/csharp/restsharp/net4.8/Petstore/src/Org.OpenAPITools/Model/Cat.cs +++ b/samples/client/petstore/csharp/restsharp/net4.8/Petstore/src/Org.OpenAPITools/Model/Cat.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// Cat /// [DataContract(Name = "Cat")] - [JsonConverter(typeof(JsonSubtypes), "ClassName")] public partial class Cat : Animal, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/net4.8/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs b/samples/client/petstore/csharp/restsharp/net4.8/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs index a5d404bd17d..f546083c72f 100644 --- a/samples/client/petstore/csharp/restsharp/net4.8/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs +++ b/samples/client/petstore/csharp/restsharp/net4.8/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// ChildCat /// [DataContract(Name = "ChildCat")] - [JsonConverter(typeof(JsonSubtypes), "PetType")] public partial class ChildCat : ParentPet, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/net4.8/Petstore/src/Org.OpenAPITools/Model/Dog.cs b/samples/client/petstore/csharp/restsharp/net4.8/Petstore/src/Org.OpenAPITools/Model/Dog.cs index 44f95fa0fe0..7437cf68475 100644 --- a/samples/client/petstore/csharp/restsharp/net4.8/Petstore/src/Org.OpenAPITools/Model/Dog.cs +++ b/samples/client/petstore/csharp/restsharp/net4.8/Petstore/src/Org.OpenAPITools/Model/Dog.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// Dog /// [DataContract(Name = "Dog")] - [JsonConverter(typeof(JsonSubtypes), "ClassName")] public partial class Dog : Animal, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/net7/EnumMappings/src/Org.OpenAPITools/Model/Cat.cs b/samples/client/petstore/csharp/restsharp/net7/EnumMappings/src/Org.OpenAPITools/Model/Cat.cs index a427b55727d..a52dd988da5 100644 --- a/samples/client/petstore/csharp/restsharp/net7/EnumMappings/src/Org.OpenAPITools/Model/Cat.cs +++ b/samples/client/petstore/csharp/restsharp/net7/EnumMappings/src/Org.OpenAPITools/Model/Cat.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// Cat /// [DataContract(Name = "Cat")] - [JsonConverter(typeof(JsonSubtypes), "ClassName")] public partial class Cat : Animal, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/net7/EnumMappings/src/Org.OpenAPITools/Model/ChildCat.cs b/samples/client/petstore/csharp/restsharp/net7/EnumMappings/src/Org.OpenAPITools/Model/ChildCat.cs index a5d404bd17d..f546083c72f 100644 --- a/samples/client/petstore/csharp/restsharp/net7/EnumMappings/src/Org.OpenAPITools/Model/ChildCat.cs +++ b/samples/client/petstore/csharp/restsharp/net7/EnumMappings/src/Org.OpenAPITools/Model/ChildCat.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// ChildCat /// [DataContract(Name = "ChildCat")] - [JsonConverter(typeof(JsonSubtypes), "PetType")] public partial class ChildCat : ParentPet, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/net7/EnumMappings/src/Org.OpenAPITools/Model/Dog.cs b/samples/client/petstore/csharp/restsharp/net7/EnumMappings/src/Org.OpenAPITools/Model/Dog.cs index 44f95fa0fe0..7437cf68475 100644 --- a/samples/client/petstore/csharp/restsharp/net7/EnumMappings/src/Org.OpenAPITools/Model/Dog.cs +++ b/samples/client/petstore/csharp/restsharp/net7/EnumMappings/src/Org.OpenAPITools/Model/Dog.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// Dog /// [DataContract(Name = "Dog")] - [JsonConverter(typeof(JsonSubtypes), "ClassName")] public partial class Dog : Animal, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/net7/Petstore/src/Org.OpenAPITools/Model/Cat.cs b/samples/client/petstore/csharp/restsharp/net7/Petstore/src/Org.OpenAPITools/Model/Cat.cs index 8bec3551ae9..c3e81b768d4 100644 --- a/samples/client/petstore/csharp/restsharp/net7/Petstore/src/Org.OpenAPITools/Model/Cat.cs +++ b/samples/client/petstore/csharp/restsharp/net7/Petstore/src/Org.OpenAPITools/Model/Cat.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// Cat /// [DataContract(Name = "Cat")] - [JsonConverter(typeof(JsonSubtypes), "ClassName")] public partial class Cat : Animal, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/net7/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs b/samples/client/petstore/csharp/restsharp/net7/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs index dada42c5f3f..92f35a336ba 100644 --- a/samples/client/petstore/csharp/restsharp/net7/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs +++ b/samples/client/petstore/csharp/restsharp/net7/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// ChildCat /// [DataContract(Name = "ChildCat")] - [JsonConverter(typeof(JsonSubtypes), "PetType")] public partial class ChildCat : ParentPet, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/net7/Petstore/src/Org.OpenAPITools/Model/Dog.cs b/samples/client/petstore/csharp/restsharp/net7/Petstore/src/Org.OpenAPITools/Model/Dog.cs index e2339cfb20b..343a162cbf1 100644 --- a/samples/client/petstore/csharp/restsharp/net7/Petstore/src/Org.OpenAPITools/Model/Dog.cs +++ b/samples/client/petstore/csharp/restsharp/net7/Petstore/src/Org.OpenAPITools/Model/Dog.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// Dog /// [DataContract(Name = "Dog")] - [JsonConverter(typeof(JsonSubtypes), "ClassName")] public partial class Dog : Animal, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/Cat.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/Cat.cs index 2cbd436c91e..83b09df7277 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/Cat.cs +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/Cat.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// Cat /// [DataContract(Name = "Cat")] - [JsonConverter(typeof(JsonSubtypes), "ClassName")] public partial class Cat : Animal, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/ChildCat.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/ChildCat.cs index ff34516f9e2..6b2dbcced29 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/ChildCat.cs +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/ChildCat.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// ChildCat /// [DataContract(Name = "ChildCat")] - [JsonConverter(typeof(JsonSubtypes), "PetType")] public partial class ChildCat : ParentPet, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/Dog.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/Dog.cs index f18adc07b2b..5dd5796b42d 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/Dog.cs +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/Dog.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// Dog /// [DataContract(Name = "Dog")] - [JsonConverter(typeof(JsonSubtypes), "ClassName")] public partial class Dog : Animal, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/Petstore/src/Org.OpenAPITools/Model/Cat.cs b/samples/client/petstore/csharp/restsharp/standard2.0/Petstore/src/Org.OpenAPITools/Model/Cat.cs index a427b55727d..a52dd988da5 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/Petstore/src/Org.OpenAPITools/Model/Cat.cs +++ b/samples/client/petstore/csharp/restsharp/standard2.0/Petstore/src/Org.OpenAPITools/Model/Cat.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// Cat /// [DataContract(Name = "Cat")] - [JsonConverter(typeof(JsonSubtypes), "ClassName")] public partial class Cat : Animal, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs b/samples/client/petstore/csharp/restsharp/standard2.0/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs index a5d404bd17d..f546083c72f 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs +++ b/samples/client/petstore/csharp/restsharp/standard2.0/Petstore/src/Org.OpenAPITools/Model/ChildCat.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// ChildCat /// [DataContract(Name = "ChildCat")] - [JsonConverter(typeof(JsonSubtypes), "PetType")] public partial class ChildCat : ParentPet, IEquatable, IValidatableObject { /// diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/Petstore/src/Org.OpenAPITools/Model/Dog.cs b/samples/client/petstore/csharp/restsharp/standard2.0/Petstore/src/Org.OpenAPITools/Model/Dog.cs index 44f95fa0fe0..7437cf68475 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/Petstore/src/Org.OpenAPITools/Model/Dog.cs +++ b/samples/client/petstore/csharp/restsharp/standard2.0/Petstore/src/Org.OpenAPITools/Model/Dog.cs @@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model /// Dog /// [DataContract(Name = "Dog")] - [JsonConverter(typeof(JsonSubtypes), "ClassName")] public partial class Dog : Animal, IEquatable, IValidatableObject { ///