Как заставить шаблон регулярных выражений на значения словаря (njsonschema)
Используя njsonschema, я хочу создать схему, которая гарантирует, что все значения, записанные в словарь, будут проверены на соответствие шаблону регулярных выражений.
Рассмотрим следующий класс:
class File
{
[RegularExpression("^\\d+\\.\\d+\\.\\d+\\.\\d+$")]
public Dictionary<string, string> Versions { get; set; }
}
Часть схемы, которую я хочу, чтобы генерировала njsonschema:
"Versions": {
"type": "object",
"additionalProperties": {
"type": "string",
"pattern": "^\\d+\\.\\d+\\.\\d+\\.\\d+$"
}
}
Instaed, njsonschema генерирует что-то вроде этого:
"Versions": {
"type": "object",
"pattern": "^\\d+\\.\\d+\\.\\d+\\.\\d+$",
"additionalProperties": {
"type": "string"
}
}
Есть ли способ добиться этого?
Заранее спасибо!
1 ответ
Эта проблема была исправлена в этом коммите:
https://github.com/RSuter/NJsonSchema/commit/fa1b36b68bb5ad7ec005b2a77002a5668d1aa2b4
Выпущена версия NJsonSchema (v9.4.4+) с этим исправлением...