C# 枚举的JSON模式验证两次显示相同的错误消息
我正在提交此JSON字符串:C# 枚举的JSON模式验证两次显示相同的错误消息,c#,json.net,jsonschema,C#,Json.net,Jsonschema,我正在提交此JSON字符串: { "companyName" : "Goog" } 模式是: { "companyName": { "type":[ "string", "null" ], "description": "Companies list", "required":false , "maxLength": 256, "enum": [ "Google", "Apple" , nul
{
"companyName" : "Goog"
}
模式是:
{
"companyName": {
"type":[ "string", "null" ],
"description": "Companies list",
"required":false ,
"maxLength": 256,
"enum": [ "Google", "Apple" , null ]
}
}
我使用Newtonsoft.Json验证器函数IsValid
JObject jobj= _jsonParser.ToJSonObject(jsonString);
IList<string> errMessages;
var valid = jobj.IsValid(jsonSchema, out errMessages);
JObject jobj=\u jsonParser.ToJSonObject(jsonString);
IList错误消息;
var valid=jobj.IsValid(jsonSchema,out errMessages);
验证时,我会收到重复两次的相同错误消息:
Value "Goog" is not defined in enum. Line 34,
position 35.,
Value "Goog" is not defined in enum. Line 34,
position 35.
枚举中未定义值“Goog”。第34行,
第35位。,
枚举中未定义值“Goog”。第34行,
第35位。
我在做什么有问题吗?或者这是JSON验证器的问题吗?对于我收到的错误消息,我将其放在一个列表中,并调用distinct()
你能给我们看一下你用来验证json模式的代码吗?@JanR,我正在使用Newtonsoft.json函数IsValid。Newtonsoft.Json.Schema.Extensions.IsValid(这个JToken、JsonSchema、out-IList)。这是我的代码:var entity=_jsonParser.ToObject(jsonEntity);IList错误消息;var valid=entity.IsValid(jsonSchema,out errMessages);当向我们展示代码时,您应该通过在中编辑它来将其放入您的问题中。不要用评论来回答这个问题。@JeffMercado,我已经对这个问题进行了编辑。我正在使用Newtonsoft.Json模式验证器。@JanR用我正在使用的函数更新了这个问题。
errMessages.Distinct().ToList()