public Node(RedisResult result)
        {
            var cell = (RedisResult[])result;

            NodeId = (int)cell[0];

            var labelIds = (RedisResult[])cell[1];

            Labels = labelIds.Select(id => GraphCache.Label((int)id)).ToArray();

            var properties = (RedisResult[])cell[2];

            _properties = properties.ToDictionary(c => GraphCache.PropertyName((int)((RedisResult[])c)[0]), c => (object)((RedisResult[])c)[2].ToString());
        }
        public Edge(RedisResult results)
        {
            var cell = (RedisResult[])results;

            Id = (int)cell[0];

            RelationshipTypeId = (int)cell[1];
            RelationshipType   = GraphCache.RelationshipType(RelationshipTypeId);

            SourceNodeId      = (int)cell[2];
            DestinationNodeId = (int)cell[3];
            var properties = (RedisResult[])cell[4];

            _properties = properties.ToDictionary(c => GraphCache.PropertyName((int)((RedisResult[])c)[0]), c => (object)((RedisResult[])c)[2].ToString());
        }