我如何使用多个模式生成提供程序



我们使用Json。Net模式,并需要多个生成提供程序。但是,当我们指定多个生成提供程序时,似乎只使用列表中的最后一个。

这是一个只使用ObjectNotNullableGenerationProvider而忽略StringEnumGeneration的例子。

任何例子的例子的多个提供者或帮助为什么这是不工作的,将不胜感激。

的例子:

var generator = new JSchemaGenerator
    {
        SchemaReferenceHandling = SchemaReferenceHandling.None,
        DefaultRequired = Required.Default,
    };
generator.GenerationProviders.Add(new StringEnumGenerationProvider());
generator.GenerationProviders.Add(new ObjectNotNullableGenerationProvider());
var jsonSchema = generator.Generate(typeof(SchemaTest));

JSchemaGenerationProvider上的GetSchema方法返回一个新模式。只调用第一个匹配的模式生成提供程序,并使用它的模式。

你能做的就是从StringEnumGenerationProvider(这里可用)获取源代码,并拥有你自己的版本,要么继承ObjectNotNullableGenerationProvider,要么在内部重用其逻辑。

相关内容

  • 没有找到相关文章

最新更新