Json.Newton Setting

$type as property with namespace

services.AddControllers().AddNewtonsoftJson(
           x => x.SerializerSettings.TypeNameHandling = Newtonsoft.Json.TypeNameHandling.All
);

Swagger Polymorphism

 services.AddSwaggerGen(c =>
            {
                //c.UseOneOfForPolymorphism();
                c.UseAllOfForInheritance();
                c.SelectDiscriminatorNameUsing(_ => "discriminator");
                //c.CustomSchemaIds(type => type.ToString());

Swagger own Schema Proccesor

app.UseSwaggerUI(c =>
            {
                c.SwaggerEndpoint("/swagger/v1/swagger.json", "*****.**** API V1");
                //c.GeneratorSettings.SchemaProcessors.Add(new InheritanceSchemaProcessor());
            });
 
 
            // app.UseSwaggerUI(typeof(Startup).GetTypeInfo().Assembly, settings =>
            // {
            //     settings.GeneratorSettings.SchemaProcessors.Add(new InheritanceSchemaProcessor());
            // });
Kategoria: