コード例 #1
0
        public List <T> Complete <T>()
        {
            var results = new List <T>(_result.Results.Length);

            for (var i = 0; i < _result.Results.Length; i++)
            {
                var document = (BlittableJsonReaderObject)_result.Results[i];
                var metadata = document.GetMetadata();
                var id       = metadata.GetId();
                var entity   = (T)_session.ConvertToEntity(typeof(T), id, document);
                results.Add(entity);

                var changeVector = BlittableJsonExtensions.GetChangeVector(metadata);
                _session.DocumentsByEntity[entity] = new DocumentInfo
                {
                    Id           = id,
                    ChangeVector = changeVector,
                    Document     = document,
                    Metadata     = metadata,
                    Entity       = entity
                };
            }

            return(results);
        }
コード例 #2
0
        private T GetRevision <T>(BlittableJsonReaderObject document)
        {
            if (document == null)
            {
                return(default(T));
            }

            var metadata = document.GetMetadata();
            var id       = metadata.GetId();
            var entity   = (T)_session.ConvertToEntity(typeof(T), id, document);

            _session.DocumentsByEntity[entity] = new DocumentInfo
            {
                Id           = id,
                ChangeVector = metadata.GetChangeVector(),
                Document     = document,
                Metadata     = metadata,
                Entity       = entity
            };

            return(entity);
        }