指定一个值,该值可以是字符串,也可以是带有JSON模式的null
希望这对其他人来说不是很明显,因为我发现网站上的文档缺少更精细的细节。我得到了一个JSON块,其中的一些属性可以是指定一个值,该值可以是字符串,也可以是带有JSON模式的null,json,json.net,jsonschema,Json,Json.net,Jsonschema,希望这对其他人来说不是很明显,因为我发现网站上的文档缺少更精细的细节。我得到了一个JSON块,其中的一些属性可以是null或string。在JSON模式(由JSON.NET的JsonSchema.Parse方法解析)中,如何指定值的类型可以是null或string 我是否缺少一些简单的东西,比如为类型提供数组?比如, "member_region": { "type": [ "string", null ] } // this thro
null
或string
。在JSON模式(由JSON.NET的JsonSchema.Parse
方法解析)中,如何指定值的类型可以是null
或string
我是否缺少一些简单的东西,比如为类型提供数组?比如,
"member_region": { "type": [ "string", null ] } // this throws an exception
还有,有谁比JSON-Schema.org有更好的JSON模式详细信息源吗?在哪里可以找到更多的示例?我不想阅读一个大文档/规范来找到一些可以在10行示例中轻松演示的内容。From
此关键字的值必须是字符串或数组。如果是数组,则数组的元素必须是字符串并且必须是唯一的
字符串值必须是核心规范定义的七种基本类型之一
然后我们提到类型:
它列出字符串和null。尝试:
"member_region": { "type": ["string", "null"] }
如果您选择数组语法,请在以下情况下进行扩展:
"member_region": { "type": [ "string", "null" ] } // this works
因为您是在说明类型,而不是示例/值。你不应该去:
"member_region": { "type": [ "string", null ] } // this throws an exception
如果不使用正则表达式模式,[“string”,“null”]将起作用
我正在使用日期字段验证程序:
(0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19|20)\\d\\d
要允许MM/dd/yyyy模式,但它将在空字符串(“”)处引发不匹配错误,这是唯一适用于Azure逻辑应用程序架构的解决方案。Visual Studio代码也可以识别此解决方案。
“string,null”
不起作用,但[“string”,“null”]
是的。看起来大约一年前有人改变了这个答案。我把它改回了正确的答案。这是一个指向当前规范中位置的更新链接:空字符串不等同于JSON中的null
。实际上,我用以下内容解决了这个问题:((0[1-9]| 1[012])[-/.](0[1-9]|[12][0-9]| 3[01])[-/.](19[124; 20)\\d)*?