问题描述
private void ValidateJsonSchema<T>(string jsonData)
{
var schema = JsonSchema.FromType<T>();
var errors = schema.Validate(jsonData);
}
param jsonData 是响应的内容,但有时它会是一个像下面这样的数组
[
{
"id": "123","title": "abc"
},{
"id": "456","title": "def"
}
]
那我该如何处理?
解决方法
我尝试了以下代码并且它有效:
var schema = JsonSchema.FromType(type);
var jtoken = JToken.Parse(jsonData);
if (jtoken.Type == JTokenType.Array)
schema.Type = JsonObjectType.Array;
var errors = schema.Validate(jtoken);