Using JsonSchemaResolver |
This sample uses a JsonSchemaResolver to resolve schema references from different JSON documents.
Caution |
---|
Obsolete. JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. |
string schemaJson; JsonSchemaResolver resolver = new JsonSchemaResolver(); schemaJson = @"{ 'id': 'person', 'type': 'object', 'properties': { 'name': {'type':'string'}, 'age': {'type':'integer'} } }"; JsonSchema personSchema = JsonSchema.Parse(schemaJson, resolver); schemaJson = @"{ 'id': 'employee', 'type': 'object', 'extends': {'$ref':'person'}, 'properties': { 'salary': {'type':'number'}, 'jobTitle': {'type':'string'} } }"; JsonSchema employeeSchema = JsonSchema.Parse(schemaJson, resolver); string json = @"{ 'name': 'James', 'age': 29, 'salary': 9000.01, 'jobTitle': 'Junior Vice President' }"; JObject employee = JObject.Parse(json); bool valid = employee.IsValid(employeeSchema); Console.WriteLine(valid); // true