コード例 #1
0
        public static dynamic ToDynamicArray(this JArray jArray, List <DynamicViewModel> parent)
        {
            foreach (var jToken in jArray)
            {
                if (jToken is JObject)
                {
                    dynamic property = (jToken as JObject).ToDynamic(DynamicViewModelFactory.Create());
                    parent.Add(property);
                }
                else if (jToken is JArray)
                {
                    dynamic property = (jToken as JArray).ToDynamicArray(new List <DynamicViewModel>());
                    parent.Add(property);
                }
            }

            return(parent);
        }
コード例 #2
0
        public static dynamic ToDynamic(this JObject jObject, DynamicViewModel parent)
        {
            foreach (var kvPair in jObject)
            {
                var value = kvPair.Value;
                if (value is JObject)
                {
                    dynamic property = (value as JObject).ToDynamic(DynamicViewModelFactory.Create());
                    parent.Set(kvPair.Key, property);
                }
                else if (value is JArray)
                {
                    // It's an array - make the property a collection.
                    dynamic property = (value as JArray).ToDynamicArray(new List <DynamicViewModel>());
                    parent.Set(kvPair.Key, property);
                }
                else
                {
                    parent.Set(kvPair.Key, value);
                }
            }

            return(parent);
        }