Установите пакет Newtonsoft.Json.Schema
через диспетчер пакетов NuGet, тогда вы можете выводить перечисления в виде строк из коробки.
Указанные классы
public class Foo
{
public Options Bar { get; set; }
}
public enum Options
{
Option1,
Option2
}
Схема будет сгенерированный следующим образом, не нужно украшать классы / свойства атрибутом [JsonConverter(typeof(StringEnumConverter))]
.
JSchemaGenerator generator = new JSchemaGenerator();
generator.GenerationProviders.Add(new StringEnumGenerationProvider());
JSchema schema = generator.Generate(typeof(Foo), false);
//Console.WriteLine(schema);