如何引用其他文件中的架构?
在尝试$ref
架构时,我在Visual Studio中收到以下警告:
不支持应用于文档的架构类型。
我正在尝试使用JSchema
:
var schema = JSchema.Parse(@"{
'$schema': 'http://json-schema.org/draft-06/schema#',
'properties': {
'address': {
'$ref': 'MyOtherFile.Address.json#/definitions/address'
}
}
}
");
MyOtherFile.Address.json
的内容:
{
"$schema": "http://json-schema.org/draft-06/schema#",
"type": "object",
"definitions": {
"address": {
"title": "Address",
"addressLine1": {
"type": "string"
},
"addressLine2": {
"type": "string"
},
"city": {
"type": "string"
},
"country": {
"type": "string"
},
"state": {
"type": "string"
}
}
}
}
这是VS的样子:
我在做什么错?如何引用其他文件中的架构?
答案 0 :(得分:0)
对于documentation,您必须在对JSchemaUrlResolver()
的调用中添加参数(JSchema.Parse
)才能解析外部模式:
var schema = JSchema.Parse(@"{
'$schema': 'http://json-schema.org/draft-06/schema#',
'properties': {
'address': {
'$ref': 'MyOtherFile.Address.json#/definitions/address'
}
}
}
", new JSchemaUrlResolver()); //here's the change