我想从json数据文件生成json模式,如下所示。(这是使用在线工具http://jsonschema.net/生成的) 是否有可能使用JSON.NET或其他任何?
Json DataFile:
{
"graph": [
{
"id": 453,
"cid": 143,
"title": "graph1",
"description": "",
"thumbnailPath": "art.jpg",
"detailPath": "art.jpg",
"link": "www.test.html",
"author": "graph Team"
},
{
"id": 12,
"cid": 121,
"title": "graph2",
"description": "",
"thumbnailPath": "art2.jpg",
"detailPath": "art2.jpg",
"link": "www.test2.html",
"author": "graph Team"
}
]
}
输出:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "/",
"type": "object",
"properties": {
"graph": {
"id": "graph",
"type": "array",
"items": {
"id": "1",
"type": "object",
"properties": {
"id": {
"id": "id",
"type": "integer"
},
"cid": {
"id": "cid",
"type": "integer"
},
"title": {
"id": "title",
"type": "string"
},
"description": {
"id": "description",
"type": "string"
},
"thumbnailPath": {
"id": "thumbnailPath",
"type": "string"
},
"detailPath": {
"id": "detailPath",
"type": "string"
},
"link": {
"id": "link",
"type": "string"
},
"author": {
"id": "author",
"type": "string"
}
}
}
}
}
}
我的目标是不使用工具,因为我想在程序运行时生成它。
答案 0 :(得分:1)
好的,我这样做了:
-
string json = @"{
""graph"": [
{
""id"": 453,
""cid"": 143,
""title"": ""graph1"",
""description"": """",
""thumbnailPath"": ""art.jpg"",
""detailPath"": ""art.jpg"",
""link"": ""www.test.html"",
""author"": ""graph Team""
},
{
""id"": 12,
""cid"": 121,
""title"": ""graph2"",
""description"": """",
""thumbnailPath"": ""art2.jpg"",
""detailPath"": ""art2.jpg"",
""link"": ""www.test2.html"",
""author"": ""graph Team""
}
]
}";
string jsonSchema = Microsoft.Json.SchemaProducer.SchemaBuilder.CreateSchema(json);