Как удалить SchemaReferenceHandling в NjsonSchema - PullRequest
0 голосов
/ 17 июня 2020

Я работаю над созданием схемы JSON из типа. NET с использованием NJsonSchema. Я получаю ссылки ("$ ref" ...) для сложного типа в сгенерированном json.

"properties": {
    "resourceType": {
      "type": "string"
    },
    "id": {
      "type": "string"
    },
    "onset": {
      "type": "string"
    },
    "recorder": { 
      "$ref": "#/definitions/ResourceReference"
    },

Мне не нужны ссылки, вместо этого я хочу, чтобы здесь был сам весь блок. Я пробовал приведенную ниже строку кода, но она, похоже, не работает.

var generator = new NJsonSchema.Generation.JsonSchemaGenerator(new JsonSchemaGeneratorSettings { AllowReferencesWithProperties = false });

Мне удалось это сделать с помощью пакета Newtonsoft. Json (см. Код ниже), но Newtosoft. Json имел ограничение в 10 генераций схемы в час, мне пришлось переключиться на NJsonSchema.

var generator = new JSchemaGenerator { SchemaReferenceHandling = SchemaReferenceHandling.None };

Есть ли способ получить весь блок и не ссылаться на него с помощью NJsonSchema.

...