Ejemplo n.º 1
0
        public static void Include(BlittableJsonReaderObject document, string include, Func <string, bool> loadId)
        {
            if (string.IsNullOrEmpty(include) || document == null)
            {
                return;
            }
            bool isPrefix;
            var  path = GetIncludePath(include, out isPrefix);

            foreach (var token in document.SelectTokenWithRavenSyntaxReturningFlatStructure(path.Path))
            {
                ExecuteInternal(token.Item1, path.Addition, (value, addition) =>
                {
                    value = (addition != null ?
                             (isPrefix ? addition + value : string.Format(addition, value)) : value);
                    return(loadId(value));
                });
            }
        }