Exemplo n.º 1
0
        private async Task <IDictionary <string, IRelationshipObject> > DeserializeRelationships(JsonReader reader, string currentPath)
        {
            if (reader.TokenType != JsonToken.StartObject)
            {
                throw new DeserializationException("Invalid relationship object", "Expected an object but encountered " + reader.TokenType, currentPath);
            }

            var relationships = new Dictionary <string, IRelationshipObject>();

            while (reader.Read())
            {
                if (reader.TokenType == JsonToken.EndObject)
                {
                    break;
                }

                var relationshipName = (string)reader.Value;
                reader.Read();

                var relationship = await RelationshipObjectFormatter.Deserialize(reader, currentPath + "/" + relationshipName);

                relationships.Add(relationshipName, relationship);
            }

            return(relationships);
        }