mirror of
https://github.com/OpenAPITools/openapi-generator.git
synced 2025-05-12 20:50:55 +00:00
fix(csharp): Fixed JsonConverter for discriminators only appearing on base classes (#19972)
* fix(csharp): Fixed JsonConverter for discriminators only appearing on base classes * chore: Updated .NET samples
This commit is contained in:
parent
5702751e91
commit
d9229c7b9f
@ -34,7 +34,9 @@ namespace {{modelPackage}}
|
|||||||
[DataContract]
|
[DataContract]
|
||||||
{{#discriminator}}
|
{{#discriminator}}
|
||||||
{{#useNewtonsoft}}
|
{{#useNewtonsoft}}
|
||||||
|
{{#mappedModels.size}}
|
||||||
[JsonConverter(typeof(JsonSubtypes), "{{{discriminatorName}}}")]
|
[JsonConverter(typeof(JsonSubtypes), "{{{discriminatorName}}}")]
|
||||||
|
{{/mappedModels.size}}
|
||||||
{{/useNewtonsoft}}
|
{{/useNewtonsoft}}
|
||||||
{{#useSwashbuckle}}
|
{{#useSwashbuckle}}
|
||||||
[SwaggerDiscriminator("{{{discriminatorName}}}")]
|
[SwaggerDiscriminator("{{{discriminatorName}}}")]
|
||||||
|
@ -3,7 +3,9 @@
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "{{{name}}}")]
|
[DataContract(Name = "{{{name}}}")]
|
||||||
{{#discriminator}}
|
{{#discriminator}}
|
||||||
|
{{#mappedModels.size}}
|
||||||
[JsonConverter(typeof(JsonSubtypes), "{{{discriminatorName}}}")]
|
[JsonConverter(typeof(JsonSubtypes), "{{{discriminatorName}}}")]
|
||||||
|
{{/mappedModels.size}}
|
||||||
{{#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}}")]
|
||||||
{{/mappedModels}}
|
{{/mappedModels}}
|
||||||
|
@ -10,7 +10,9 @@
|
|||||||
[DataContract(Name = "{{{name}}}")]
|
[DataContract(Name = "{{{name}}}")]
|
||||||
{{^useUnityWebRequest}}
|
{{^useUnityWebRequest}}
|
||||||
{{#discriminator}}
|
{{#discriminator}}
|
||||||
|
{{#mappedModels.size}}
|
||||||
[JsonConverter(typeof(JsonSubtypes), "{{{discriminatorName}}}")]
|
[JsonConverter(typeof(JsonSubtypes), "{{{discriminatorName}}}")]
|
||||||
|
{{/mappedModels.size}}
|
||||||
{{#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}}")]
|
||||||
{{/mappedModels}}
|
{{/mappedModels}}
|
||||||
|
@ -32,7 +32,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// Cat
|
/// Cat
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "Cat")]
|
[DataContract(Name = "Cat")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "ClassName")]
|
|
||||||
public partial class Cat : Animal, IEquatable<Cat>, IValidatableObject
|
public partial class Cat : Animal, IEquatable<Cat>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -32,7 +32,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// ChildCat
|
/// ChildCat
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "ChildCat")]
|
[DataContract(Name = "ChildCat")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "PetType")]
|
|
||||||
public partial class ChildCat : ParentPet, IEquatable<ChildCat>, IValidatableObject
|
public partial class ChildCat : ParentPet, IEquatable<ChildCat>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -32,7 +32,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// Dog
|
/// Dog
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "Dog")]
|
[DataContract(Name = "Dog")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "ClassName")]
|
|
||||||
public partial class Dog : Animal, IEquatable<Dog>, IValidatableObject
|
public partial class Dog : Animal, IEquatable<Dog>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// Cat
|
/// Cat
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "Cat")]
|
[DataContract(Name = "Cat")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "ClassName")]
|
|
||||||
public partial class Cat : Animal, IEquatable<Cat>, IValidatableObject
|
public partial class Cat : Animal, IEquatable<Cat>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// ChildCat
|
/// ChildCat
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "ChildCat")]
|
[DataContract(Name = "ChildCat")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "PetType")]
|
|
||||||
public partial class ChildCat : ParentPet, IEquatable<ChildCat>, IValidatableObject
|
public partial class ChildCat : ParentPet, IEquatable<ChildCat>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// Dog
|
/// Dog
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "Dog")]
|
[DataContract(Name = "Dog")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "ClassName")]
|
|
||||||
public partial class Dog : Animal, IEquatable<Dog>, IValidatableObject
|
public partial class Dog : Animal, IEquatable<Dog>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// Cat
|
/// Cat
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "Cat")]
|
[DataContract(Name = "Cat")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "ClassName")]
|
|
||||||
public partial class Cat : Animal, IEquatable<Cat>, IValidatableObject
|
public partial class Cat : Animal, IEquatable<Cat>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// ChildCat
|
/// ChildCat
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "ChildCat")]
|
[DataContract(Name = "ChildCat")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "PetType")]
|
|
||||||
public partial class ChildCat : ParentPet, IEquatable<ChildCat>, IValidatableObject
|
public partial class ChildCat : ParentPet, IEquatable<ChildCat>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// Dog
|
/// Dog
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "Dog")]
|
[DataContract(Name = "Dog")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "ClassName")]
|
|
||||||
public partial class Dog : Animal, IEquatable<Dog>, IValidatableObject
|
public partial class Dog : Animal, IEquatable<Dog>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// Cat
|
/// Cat
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "Cat")]
|
[DataContract(Name = "Cat")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "ClassName")]
|
|
||||||
public partial class Cat : Animal, IEquatable<Cat>, IValidatableObject
|
public partial class Cat : Animal, IEquatable<Cat>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// ChildCat
|
/// ChildCat
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "ChildCat")]
|
[DataContract(Name = "ChildCat")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "PetType")]
|
|
||||||
public partial class ChildCat : ParentPet, IEquatable<ChildCat>, IValidatableObject
|
public partial class ChildCat : ParentPet, IEquatable<ChildCat>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// Dog
|
/// Dog
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "Dog")]
|
[DataContract(Name = "Dog")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "ClassName")]
|
|
||||||
public partial class Dog : Animal, IEquatable<Dog>, IValidatableObject
|
public partial class Dog : Animal, IEquatable<Dog>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// Cat
|
/// Cat
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "Cat")]
|
[DataContract(Name = "Cat")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "ClassName")]
|
|
||||||
public partial class Cat : Animal, IEquatable<Cat>, IValidatableObject
|
public partial class Cat : Animal, IEquatable<Cat>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// ChildCat
|
/// ChildCat
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "ChildCat")]
|
[DataContract(Name = "ChildCat")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "PetType")]
|
|
||||||
public partial class ChildCat : ParentPet, IEquatable<ChildCat>, IValidatableObject
|
public partial class ChildCat : ParentPet, IEquatable<ChildCat>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// Dog
|
/// Dog
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "Dog")]
|
[DataContract(Name = "Dog")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "ClassName")]
|
|
||||||
public partial class Dog : Animal, IEquatable<Dog>, IValidatableObject
|
public partial class Dog : Animal, IEquatable<Dog>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// Cat
|
/// Cat
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "Cat")]
|
[DataContract(Name = "Cat")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "ClassName")]
|
|
||||||
public partial class Cat : Animal, IEquatable<Cat>, IValidatableObject
|
public partial class Cat : Animal, IEquatable<Cat>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// ChildCat
|
/// ChildCat
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "ChildCat")]
|
[DataContract(Name = "ChildCat")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "PetType")]
|
|
||||||
public partial class ChildCat : ParentPet, IEquatable<ChildCat>, IValidatableObject
|
public partial class ChildCat : ParentPet, IEquatable<ChildCat>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// Dog
|
/// Dog
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "Dog")]
|
[DataContract(Name = "Dog")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "ClassName")]
|
|
||||||
public partial class Dog : Animal, IEquatable<Dog>, IValidatableObject
|
public partial class Dog : Animal, IEquatable<Dog>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// Cat
|
/// Cat
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "Cat")]
|
[DataContract(Name = "Cat")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "ClassName")]
|
|
||||||
public partial class Cat : Animal, IEquatable<Cat>, IValidatableObject
|
public partial class Cat : Animal, IEquatable<Cat>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// ChildCat
|
/// ChildCat
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "ChildCat")]
|
[DataContract(Name = "ChildCat")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "PetType")]
|
|
||||||
public partial class ChildCat : ParentPet, IEquatable<ChildCat>, IValidatableObject
|
public partial class ChildCat : ParentPet, IEquatable<ChildCat>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -31,7 +31,6 @@ namespace Org.OpenAPITools.Model
|
|||||||
/// Dog
|
/// Dog
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "Dog")]
|
[DataContract(Name = "Dog")]
|
||||||
[JsonConverter(typeof(JsonSubtypes), "ClassName")]
|
|
||||||
public partial class Dog : Animal, IEquatable<Dog>, IValidatableObject
|
public partial class Dog : Animal, IEquatable<Dog>, IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user