Как мне разрешить нулевые свойства в моих сгенерированных классах POCO?

Используя NJsonSchema.CodeGeneration, я могу вывести свойства, как определено в схеме JSON. Однако я заметил, что в сгенерированном коде происходит пара вещей:

  1. все свойства имеют Required = Newtonsoft...DisallowNull свойство определено.

  2. каждому свойству присваивается новый экземпляр класса.

Пример:

[Newtonsoft.Json.JsonProperty("myProperty", Required = Newtonsoft.Json.Required.DisallowNull, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public MyProperty MyProperty { get; set; } = new MyProperty();

Вопрос:

Как сделать так, чтобы сгенерированный код допускал нулевые значения? Это не обязательные свойства в схеме JSON, и не имеет смысла их инициализировать. С другой стороны, удобно инициализировать классы коллекций по умолчанию, чтобы их можно было повторять без исключения (это также актуально для коллекций).

0 ответов

Другие вопросы по тегам