Example #1
0
        public static T DeserializeData <T>(string searchString) where T : class
        {
            var jsonText         = TestFileHelpers.GetTestFileContent(searchString);
            var contractResolver = new PrivateSetterJsonDefaultContractResolver();
            var settings         = new JsonSerializerSettings
            {
                ContractResolver = contractResolver,
                Converters       = new[] { new TypeConverter() }
            };

            return(JsonConvert.DeserializeObject <T>(jsonText, settings));
        }
Example #2
0
        public static T DeserializeArrayWithSingleAlteration <T>(string searchString, object value, params object[] accessKeys) where T : class
        {
            var jsonText = TestFileHelpers.GetTestFileContent(searchString);
            var jArray   = JArray.Parse(jsonText);

            switch (accessKeys.Length)
            {
            case 1:
                jArray[accessKeys[0]] = new JValue(value);
                break;

            case 2:
                jArray[accessKeys[0]][accessKeys[1]] = new JValue(value);
                break;

            case 3:
                jArray[accessKeys[0]][accessKeys[1]][accessKeys[2]] = new JValue(value);
                break;

            case 4:
                jArray[accessKeys[0]][accessKeys[1]][accessKeys[2]][accessKeys[3]] = new JValue(value);
                break;

            case 5:
                jArray[accessKeys[0]][accessKeys[1]][accessKeys[2]][accessKeys[3]][accessKeys[4]] = new JValue(value);
                break;

            case 6:
                jArray[accessKeys[0]][accessKeys[1]][accessKeys[2]][accessKeys[3]][accessKeys[4]][accessKeys[5]] = new JValue(value);
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }

            var contractResolver = new PrivateSetterJsonDefaultContractResolver();
            var settings         = new JsonSerializerSettings
            {
                ContractResolver = contractResolver,
                Converters       = new[] { new TypeConverter() }
            };

            return(JsonConvert.DeserializeObject <T>(jArray.ToString(), settings));
        }