private bool ExpandIndex(JObject result, JProperty _property, string activeProperty, string expandedProperty, Context activeContext, IList<string> remoteContexts, out JToken expandedValue) { bool @continue = false; if (!_property.ValueIs<string>()) { throw new InvalidOperationException("Invalid @index value."); } expandedValue = _property.ValueAs<string>(); return @continue; }
private bool ExpandType(JObject result, JProperty _property, string activeProperty, string expandedProperty, Context activeContext, IList<string> remoteContexts, out JToken expandedValue) { bool @continue = false; expandedValue = null; string key = _property.Name; JToken value = _property.Value; if ((!_property.ValueIs<string>()) && ((!(value is JArray)) || (((JArray)value).Count(item => item.Type == JTokenType.String) != ((JArray)value).Count))) { throw new InvalidOperationException("Invalid type value."); } if (_property.ValueIs<string>()) { expandedValue = ExpandIri(_property.ValueAs<string>(), activeContext, (JObject)null, true, true); } else { expandedValue = new JArray(); foreach (JValue type in (JArray)_property.Value) { ((JArray)expandedValue).Add(new JValue(ExpandIri((string)type.Value, activeContext, (JObject)null, true, true))); } } return @continue; }