private StreamResult <T> CreateStreamResult(BlittableJsonReaderObject json) { var metadata = json.GetMetadata(); var changeVector = metadata.GetChangeVector(); //MapReduce indexes return reduce results that don't have @id property metadata.TryGetId(out string id); var entity = QueryOperation.Deserialize <T>(id, json, metadata, _fieldsToFetch, true, _parent); var streamResult = new StreamResult <T> { ChangeVector = changeVector, Id = id, Document = entity, Metadata = new MetadataAsDictionary(metadata) }; return(streamResult); }
private StreamResult <T> CreateStreamResult(BlittableJsonReaderObject json) { var metadata = json.GetMetadata(); var changeVector = BlittableJsonExtensions.GetChangeVector(metadata); var id = metadata.GetId(); json = _parent.Context.ReadObject(json, id); var entity = QueryOperation.Deserialize <T>(id, json, metadata, _projectionFields, true, _parent); var streamResult = new StreamResult <T> { ChangeVector = changeVector, Id = id, Document = entity, Metadata = new MetadataAsDictionary(metadata) }; return(streamResult); }
private StreamResult <T> CreateStreamResult <T>(BlittableJsonReaderObject json, string[] projectionFields) { var metadata = json.GetMetadata(); var changeVector = BlittableJsonExtensions.GetChangeVector(metadata); var id = metadata.GetId(); //TODO - Investigate why ConvertToEntity fails if we don't call ReadObject before json = Context.ReadObject(json, id); var entity = QueryOperation.Deserialize <T>(id, json, metadata, projectionFields, true, this); var streamResult = new StreamResult <T> { ChangeVector = changeVector, Id = id, Document = entity, Metadata = new MetadataAsDictionary(metadata) }; return(streamResult); }
private StreamResult <T> CreateStreamResult <T>(BlittableJsonReaderObject json, FieldsToFetchToken fieldsToFetch) { var metadata = json.GetMetadata(); var changeVector = metadata.GetChangeVector(); //MapReduce indexes return reduce results that don't have @id property metadata.TryGetId(out string id); //TODO - Investigate why ConvertToEntity fails if we don't call ReadObject before json = Context.ReadObject(json, id); var entity = QueryOperation.Deserialize <T>(id, json, metadata, fieldsToFetch, true, this); var streamResult = new StreamResult <T> { ChangeVector = changeVector, Id = id, Document = entity, Metadata = new MetadataAsDictionary(metadata) }; return(streamResult); }
private T GetRevision <T>(BlittableJsonReaderObject document) { if (document == null) { return(default(T)); } var metadata = document.GetMetadata(); var id = metadata.GetId(); var entity = (T)_session.EntityToBlittable.ConvertToEntity(typeof(T), id, ref document, !this._session.NoTracking); _session.DocumentsByEntity[entity] = new DocumentInfo { Id = id, ChangeVector = metadata.GetChangeVector(), Document = document, Metadata = metadata, Entity = entity }; return(entity); }