将根对象添加到 NJsonSchema 模式生成器

问题描述

我正在使用 njsonSchema 从 c# 类生成 JasonSchema。我可以创建这个架构:

{
    "title": "SchemaModel","type": "object","additionalProperties": false,"properties": {
        "caseId": {
            "title": "Case Id","type": [
                "null","string"
            ],"description": "desc.",}
    }
}

通过使用:

var settings = new JsonSchemaGeneratorSettings
            {
                DefaultPropertyNameHandling = PropertyNameHandling.CamelCase
            };
            var generator = new JsonSchemaGenerator(settings);
            var schema = generator.Generate(typeof(SchemaModel));

但我需要将其包装在一个名为 schema 的对象中:

{
   "schema": {
       "title": "SchemaModel","properties": {
           "caseId": {
               "title": "Case Id","type": [
                   "null","string"
               ],}
       }
   }
}

我如何通过 njsonSchema c# 模式生成器来做到这一点?

解决方法

不确定这是否是最好的解决方案,但我最终这样做了:

return new JObject
            {
                { "schema",JToken.Parse(schema.ToJson()) }
            };