Beispiel #1
0
        public RectanglesDTO ReadContent()
        {
            JsonTextReader reader = new JsonTextReader(this.streamReader);

            JSchemaValidatingReader validatingReader = new JSchemaValidatingReader(reader);

            validatingReader.Schema = RectanglesDTO.getJsonSchema();

            JsonSerializer serializer = new JsonSerializer();
            RectanglesDTO  data       = serializer.Deserialize <RectanglesDTO>(reader);

            return(data);
        }
Beispiel #2
0
        /*
         *  alernate method with no stream
         */
        public static RectangleDTO[] ReadContentFromString(string jsonString, out IList <ValidationError> errors)
        {
            if (string.IsNullOrEmpty(jsonString))
            {
                throw new System.ArgumentException($"'{nameof(jsonString)}' cannot be null or empty", nameof(jsonString));
            }

            JObject rectangles = JObject.Parse(jsonString);
            //IList<ValidationError> errors;
            bool valid = rectangles.IsValid(RectanglesDTO.getJsonSchema(), out errors);

            if (!valid)
            {
                return(null);
            }

            var arr = rectangles["rects"];

            return(arr.ToObject <RectangleDTO[]>());
        }